diff options
author | Didier Raboud <odyx@debian.org> | 2016-09-20 11:56:08 +0200 |
---|---|---|
committer | Didier Raboud <odyx@debian.org> | 2016-09-20 11:56:08 +0200 |
commit | 7f5731038556e5b03d2a886163ca2c873c77333d (patch) | |
tree | 8f4194af3949a73accf44b2b0bd8ebfa990ac577 /src | |
parent | a313257bdec71bc92a56598e74d9097c16cb6e48 (diff) |
New upstream version 5.2.12~pre2
Diffstat (limited to 'src')
245 files changed, 14157 insertions, 12447 deletions
diff --git a/src/Makefile.am b/src/Makefile.am index 2123bad..b6d6f78 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1,4 +1,3 @@ -## $Id: Makefile.am,v 1.22 2008/06/14 02:45:19 rlk Exp $ ## Copyright (C) 2000 Roger Leigh ## ## This program is free software; you can redistribute it and/or modify @@ -28,8 +27,6 @@ SUBDIRS = \ escputil \ gimp2 \ cups \ - foomatic \ - ghost \ testpattern diff --git a/src/Makefile.in b/src/Makefile.in index a40f25e..feacab6 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -83,23 +83,22 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(top_srcdir)/scripts/global.mk $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/scripts/mkinstalldirs + $(srcdir)/Makefile.am subdir = src ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/isc-posix.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stp.m4 \ - $(top_srcdir)/m4/stp_cups.m4 $(top_srcdir)/m4/stp_gimp.m4 \ - $(top_srcdir)/m4/stp_option.m4 $(top_srcdir)/m4/stp_release.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/stp.m4 $(top_srcdir)/m4/stp_cups.m4 \ + $(top_srcdir)/m4/stp_gimp.m4 $(top_srcdir)/m4/stp_option.m4 \ + $(top_srcdir)/m4/stp_release.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/scripts/mkinstalldirs +mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = @@ -226,9 +225,6 @@ ENABLE_STATIC = @ENABLE_STATIC@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FIND = @FIND@ -FOOMATIC_CONFIGURE = @FOOMATIC_CONFIGURE@ -FOOMATIC_KITLOAD = @FOOMATIC_KITLOAD@ -FOOMATIC_PPDFILE = @FOOMATIC_PPDFILE@ GENPPD_LIBS = @GENPPD_LIBS@ GIMP2_CFLAGS = @GIMP2_CFLAGS@ GIMP2_LIBS = @GIMP2_LIBS@ @@ -261,9 +257,6 @@ GUTENPRINT_MICRO_VERSION = @GUTENPRINT_MICRO_VERSION@ GUTENPRINT_MINOR_VERSION = @GUTENPRINT_MINOR_VERSION@ GUTENPRINT_RELEASE_VERSION = @GUTENPRINT_RELEASE_VERSION@ GUTENPRINT_VERSION = @GUTENPRINT_VERSION@ -IJS_CFLAGS = @IJS_CFLAGS@ -IJS_CONFIG = @IJS_CONFIG@ -IJS_LIBS = @IJS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -284,6 +277,7 @@ LIBREADLINE_DEPS = @LIBREADLINE_DEPS@ LIBS = $(INTLLIBS) @LIBS@ LIBTOOL = @LIBTOOL@ LIBTOOL_DEPS = @LIBTOOL_DEPS@ +LIBUSB_BACKEND_LIBDEPS = @LIBUSB_BACKEND_LIBDEPS@ LIBUSB_CFLAGS = @LIBUSB_CFLAGS@ LIBUSB_LIBS = @LIBUSB_LIBS@ LIPO = @LIPO@ @@ -412,8 +406,6 @@ SUBDIRS = \ escputil \ gimp2 \ cups \ - foomatic \ - ghost \ testpattern MAINTAINERCLEANFILES = Makefile.in diff --git a/src/cups/Makefile.am b/src/cups/Makefile.am index 4e1fd1c..ed3a800 100644 --- a/src/cups/Makefile.am +++ b/src/cups/Makefile.am @@ -1,4 +1,3 @@ -## $Id: Makefile.am,v 1.152 2015/11/18 13:29:29 speachy Exp $ ## Copyright (C) 2000 Roger Leigh ## ## This program is free software; you can redistribute it and/or modify @@ -51,7 +50,7 @@ else cups_modeldir = $(pkgdatadir)/model/gutenprint/@GUTENPRINT_RELEASE_VERSION@/ endif -LOCAL_CPPFLAGS = $(GUTENPRINT_CFLAGS) $(CUPS_CFLAGS) -DBASE_VERSION=$(BASE_VERSION) +LOCAL_CPPFLAGS = $(GUTENPRINT_CFLAGS) $(CUPS_CFLAGS) -DBASE_VERSION=$(BASE_VERSION) -DSBINDIR=\"$(sbindir)/\" STP_NONLS_ENV= STP_MODULE_PATH=$(top_builddir)/src/main/.libs:$(top_builddir)/src/main STP_DATA_PATH=$(top_srcdir)/src/xml @@ -115,9 +114,9 @@ commandtoepson_SOURCES = commandtoepson.c commandtoepson_LDADD = $(CUPS_LIBS) if BUILD_LIBUSB_BACKENDS -backend_gutenprint_SOURCES = selphy_print.c kodak1400_print.c kodak6800_print.c kodak605_print.c shinko_s2145_print.c sony_updr150_print.c dnpds40_print.c mitsu70x_print.c citizencw01_print.c mitsu9550_print.c backend_common.c backend_common.h shinko_s1245_print.c shinko_s6145_print.c shinko_s6245_print.c +backend_gutenprint_SOURCES = backend_canonselphy.c backend_kodak1400.c backend_kodak6800.c backend_kodak605.c backend_shinkos2145.c backend_sonyupdr150.c backend_dnpds40.c backend_mitsu70x.c backend_citizencw01.c backend_mitsu9550.c backend_common.c backend_common.h backend_shinkos1245.c backend_shinkos6145.c backend_shinkos6245.c -backend_gutenprint_LDADD = $(LIBUSB_LIBS) +backend_gutenprint_LDADD = $(LIBUSB_LIBS) $(LIBUSB_BACKEND_LIBDEPS) backend_gutenprint_CPPFLAGS = $(LIBUSB_CFLAGS) -DURI_PREFIX=\"gutenprint$(GUTENPRINT_MAJOR_VERSION)$(GUTENPRINT_MINOR_VERSION)+usb\" -DLIBUSB_PRE_1_0_10 endif diff --git a/src/cups/Makefile.in b/src/cups/Makefile.in index 2139d69..94a6dc8 100644 --- a/src/cups/Makefile.in +++ b/src/cups/Makefile.in @@ -84,8 +84,8 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(top_srcdir)/scripts/global.mk $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/scripts/mkinstalldirs \ - $(srcdir)/Info.plist.in $(srcdir)/cups-genppdupdate.in \ + $(srcdir)/Makefile.am $(srcdir)/Info.plist.in \ + $(srcdir)/cups-genppdupdate.in \ $(srcdir)/test-rastertogutenprint.in \ $(top_srcdir)/scripts/depcomp \ $(top_srcdir)/scripts/test-driver COPYING README @@ -99,19 +99,18 @@ DIST_COMMON = $(top_srcdir)/scripts/global.mk $(srcdir)/Makefile.in \ subdir = src/cups ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/isc-posix.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stp.m4 \ - $(top_srcdir)/m4/stp_cups.m4 $(top_srcdir)/m4/stp_gimp.m4 \ - $(top_srcdir)/m4/stp_option.m4 $(top_srcdir)/m4/stp_release.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/stp.m4 $(top_srcdir)/m4/stp_cups.m4 \ + $(top_srcdir)/m4/stp_gimp.m4 $(top_srcdir)/m4/stp_option.m4 \ + $(top_srcdir)/m4/stp_release.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/scripts/mkinstalldirs +mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = Info.plist cups-genppdupdate \ test-rastertogutenprint @@ -125,29 +124,30 @@ am__installdirs = "$(DESTDIR)$(bindir)" \ PROGRAMS = $(bin_PROGRAMS) $(cupsexec_backend_PROGRAMS) \ $(cupsexec_driver_PROGRAMS) $(cupsexec_filter_PROGRAMS) \ $(sbin_PROGRAMS) -am__backend_gutenprint_SOURCES_DIST = selphy_print.c kodak1400_print.c \ - kodak6800_print.c kodak605_print.c shinko_s2145_print.c \ - sony_updr150_print.c dnpds40_print.c mitsu70x_print.c \ - citizencw01_print.c mitsu9550_print.c backend_common.c \ - backend_common.h shinko_s1245_print.c shinko_s6145_print.c \ - shinko_s6245_print.c -@BUILD_LIBUSB_BACKENDS_TRUE@am_backend_gutenprint_OBJECTS = backend_gutenprint-selphy_print.$(OBJEXT) \ -@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-kodak1400_print.$(OBJEXT) \ -@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-kodak6800_print.$(OBJEXT) \ -@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-kodak605_print.$(OBJEXT) \ -@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-shinko_s2145_print.$(OBJEXT) \ -@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-sony_updr150_print.$(OBJEXT) \ -@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-dnpds40_print.$(OBJEXT) \ -@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-mitsu70x_print.$(OBJEXT) \ -@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-citizencw01_print.$(OBJEXT) \ -@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-mitsu9550_print.$(OBJEXT) \ +am__backend_gutenprint_SOURCES_DIST = backend_canonselphy.c \ + backend_kodak1400.c backend_kodak6800.c backend_kodak605.c \ + backend_shinkos2145.c backend_sonyupdr150.c backend_dnpds40.c \ + backend_mitsu70x.c backend_citizencw01.c backend_mitsu9550.c \ + backend_common.c backend_common.h backend_shinkos1245.c \ + backend_shinkos6145.c backend_shinkos6245.c +@BUILD_LIBUSB_BACKENDS_TRUE@am_backend_gutenprint_OBJECTS = backend_gutenprint-backend_canonselphy.$(OBJEXT) \ +@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-backend_kodak1400.$(OBJEXT) \ +@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-backend_kodak6800.$(OBJEXT) \ +@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-backend_kodak605.$(OBJEXT) \ +@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-backend_shinkos2145.$(OBJEXT) \ +@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-backend_sonyupdr150.$(OBJEXT) \ +@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-backend_dnpds40.$(OBJEXT) \ +@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-backend_mitsu70x.$(OBJEXT) \ +@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-backend_citizencw01.$(OBJEXT) \ +@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-backend_mitsu9550.$(OBJEXT) \ @BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-backend_common.$(OBJEXT) \ -@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-shinko_s1245_print.$(OBJEXT) \ -@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-shinko_s6145_print.$(OBJEXT) \ -@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-shinko_s6245_print.$(OBJEXT) +@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-backend_shinkos1245.$(OBJEXT) \ +@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-backend_shinkos6145.$(OBJEXT) \ +@BUILD_LIBUSB_BACKENDS_TRUE@ backend_gutenprint-backend_shinkos6245.$(OBJEXT) backend_gutenprint_OBJECTS = $(am_backend_gutenprint_OBJECTS) am__DEPENDENCIES_1 = @BUILD_LIBUSB_BACKENDS_TRUE@backend_gutenprint_DEPENDENCIES = \ +@BUILD_LIBUSB_BACKENDS_TRUE@ $(am__DEPENDENCIES_1) \ @BUILD_LIBUSB_BACKENDS_TRUE@ $(am__DEPENDENCIES_1) AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) @@ -517,9 +517,6 @@ ENABLE_STATIC = @ENABLE_STATIC@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FIND = @FIND@ -FOOMATIC_CONFIGURE = @FOOMATIC_CONFIGURE@ -FOOMATIC_KITLOAD = @FOOMATIC_KITLOAD@ -FOOMATIC_PPDFILE = @FOOMATIC_PPDFILE@ GENPPD_LIBS = @GENPPD_LIBS@ GIMP2_CFLAGS = @GIMP2_CFLAGS@ GIMP2_LIBS = @GIMP2_LIBS@ @@ -552,9 +549,6 @@ GUTENPRINT_MICRO_VERSION = @GUTENPRINT_MICRO_VERSION@ GUTENPRINT_MINOR_VERSION = @GUTENPRINT_MINOR_VERSION@ GUTENPRINT_RELEASE_VERSION = @GUTENPRINT_RELEASE_VERSION@ GUTENPRINT_VERSION = @GUTENPRINT_VERSION@ -IJS_CFLAGS = @IJS_CFLAGS@ -IJS_CONFIG = @IJS_CONFIG@ -IJS_LIBS = @IJS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -575,6 +569,7 @@ LIBREADLINE_DEPS = @LIBREADLINE_DEPS@ LIBS = $(INTLLIBS) @LIBS@ LIBTOOL = @LIBTOOL@ LIBTOOL_DEPS = @LIBTOOL_DEPS@ +LIBUSB_BACKEND_LIBDEPS = @LIBUSB_BACKEND_LIBDEPS@ LIBUSB_CFLAGS = @LIBUSB_CFLAGS@ LIBUSB_LIBS = @LIBUSB_LIBS@ LIPO = @LIPO@ @@ -706,7 +701,7 @@ cupsexec_filterdir = $(pkglibdir)/filter @CUPS_PPDS_AT_TOP_LEVEL_FALSE@cups_modeldir = $(pkgdatadir)/model/gutenprint/@GUTENPRINT_RELEASE_VERSION@/ @CUPS_PPDS_AT_TOP_LEVEL_TRUE@cups_modeldir = $(pkgdatadir)/model/ @CUPS_PPDS_AT_TOP_LEVEL_TRUE@DONT_UNINSTALL_PPDS = true -LOCAL_CPPFLAGS = $(GUTENPRINT_CFLAGS) $(CUPS_CFLAGS) -DBASE_VERSION=$(BASE_VERSION) +LOCAL_CPPFLAGS = $(GUTENPRINT_CFLAGS) $(CUPS_CFLAGS) -DBASE_VERSION=$(BASE_VERSION) -DSBINDIR=\"$(sbindir)/\" STP_NONLS_ENV = STP_MODULE_PATH=$(top_builddir)/src/main/.libs:$(top_builddir)/src/main STP_DATA_PATH=$(top_srcdir)/src/xml STP_ENV = $(STP_NONLS_ENV) STP_LOCALEDIR=$(top_srcdir)/src/cups/catalog @BUILD_GLOBALIZED_CUPS_PPDS_FALSE@@BUILD_TRANSLATED_CUPS_PPDS_TRUE@PPD = $(PPD_NLS_1) @@ -725,8 +720,8 @@ commandtocanon_SOURCES = commandtocanon.c commandtocanon_LDADD = $(CUPS_LIBS) commandtoepson_SOURCES = commandtoepson.c commandtoepson_LDADD = $(CUPS_LIBS) -@BUILD_LIBUSB_BACKENDS_TRUE@backend_gutenprint_SOURCES = selphy_print.c kodak1400_print.c kodak6800_print.c kodak605_print.c shinko_s2145_print.c sony_updr150_print.c dnpds40_print.c mitsu70x_print.c citizencw01_print.c mitsu9550_print.c backend_common.c backend_common.h shinko_s1245_print.c shinko_s6145_print.c shinko_s6245_print.c -@BUILD_LIBUSB_BACKENDS_TRUE@backend_gutenprint_LDADD = $(LIBUSB_LIBS) +@BUILD_LIBUSB_BACKENDS_TRUE@backend_gutenprint_SOURCES = backend_canonselphy.c backend_kodak1400.c backend_kodak6800.c backend_kodak605.c backend_shinkos2145.c backend_sonyupdr150.c backend_dnpds40.c backend_mitsu70x.c backend_citizencw01.c backend_mitsu9550.c backend_common.c backend_common.h backend_shinkos1245.c backend_shinkos6145.c backend_shinkos6245.c +@BUILD_LIBUSB_BACKENDS_TRUE@backend_gutenprint_LDADD = $(LIBUSB_LIBS) $(LIBUSB_BACKEND_LIBDEPS) @BUILD_LIBUSB_BACKENDS_TRUE@backend_gutenprint_CPPFLAGS = $(LIBUSB_CFLAGS) -DURI_PREFIX=\"gutenprint$(GUTENPRINT_MAJOR_VERSION)$(GUTENPRINT_MINOR_VERSION)+usb\" -DLIBUSB_PRE_1_0_10 cups_genppd_@GUTENPRINT_RELEASE_VERSION@_SOURCES = genppd.c i18n.c i18n.h cups_genppd_@GUTENPRINT_RELEASE_VERSION@_CFLAGS = -DALL_LINGUAS='"$(ALL_LINGUAS)"' $(BUILD_SIMPLE_PPDS) $(TRANSLATE_PPDS) @@ -1114,20 +1109,20 @@ mostlyclean-compile: distclean-compile: -rm -f *.tab.c +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-backend_canonselphy.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-backend_citizencw01.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-backend_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-citizencw01_print.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-dnpds40_print.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-kodak1400_print.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-kodak605_print.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-kodak6800_print.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-mitsu70x_print.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-mitsu9550_print.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-selphy_print.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-shinko_s1245_print.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-shinko_s2145_print.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-shinko_s6145_print.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-shinko_s6245_print.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-sony_updr150_print.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-backend_dnpds40.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-backend_kodak1400.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-backend_kodak605.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-backend_kodak6800.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-backend_mitsu70x.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-backend_mitsu9550.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-backend_shinkos1245.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-backend_shinkos2145.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-backend_shinkos6145.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-backend_shinkos6245.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backend_gutenprint-backend_sonyupdr150.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/commandtocanon.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/commandtoepson.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cups-calibrate.Po@am__quote@ @@ -1159,145 +1154,145 @@ distclean-compile: @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< -backend_gutenprint-selphy_print.o: selphy_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-selphy_print.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-selphy_print.Tpo -c -o backend_gutenprint-selphy_print.o `test -f 'selphy_print.c' || echo '$(srcdir)/'`selphy_print.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-selphy_print.Tpo $(DEPDIR)/backend_gutenprint-selphy_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='selphy_print.c' object='backend_gutenprint-selphy_print.o' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_canonselphy.o: backend_canonselphy.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_canonselphy.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_canonselphy.Tpo -c -o backend_gutenprint-backend_canonselphy.o `test -f 'backend_canonselphy.c' || echo '$(srcdir)/'`backend_canonselphy.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_canonselphy.Tpo $(DEPDIR)/backend_gutenprint-backend_canonselphy.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_canonselphy.c' object='backend_gutenprint-backend_canonselphy.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-selphy_print.o `test -f 'selphy_print.c' || echo '$(srcdir)/'`selphy_print.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_canonselphy.o `test -f 'backend_canonselphy.c' || echo '$(srcdir)/'`backend_canonselphy.c -backend_gutenprint-selphy_print.obj: selphy_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-selphy_print.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-selphy_print.Tpo -c -o backend_gutenprint-selphy_print.obj `if test -f 'selphy_print.c'; then $(CYGPATH_W) 'selphy_print.c'; else $(CYGPATH_W) '$(srcdir)/selphy_print.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-selphy_print.Tpo $(DEPDIR)/backend_gutenprint-selphy_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='selphy_print.c' object='backend_gutenprint-selphy_print.obj' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_canonselphy.obj: backend_canonselphy.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_canonselphy.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_canonselphy.Tpo -c -o backend_gutenprint-backend_canonselphy.obj `if test -f 'backend_canonselphy.c'; then $(CYGPATH_W) 'backend_canonselphy.c'; else $(CYGPATH_W) '$(srcdir)/backend_canonselphy.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_canonselphy.Tpo $(DEPDIR)/backend_gutenprint-backend_canonselphy.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_canonselphy.c' object='backend_gutenprint-backend_canonselphy.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-selphy_print.obj `if test -f 'selphy_print.c'; then $(CYGPATH_W) 'selphy_print.c'; else $(CYGPATH_W) '$(srcdir)/selphy_print.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_canonselphy.obj `if test -f 'backend_canonselphy.c'; then $(CYGPATH_W) 'backend_canonselphy.c'; else $(CYGPATH_W) '$(srcdir)/backend_canonselphy.c'; fi` -backend_gutenprint-kodak1400_print.o: kodak1400_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-kodak1400_print.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-kodak1400_print.Tpo -c -o backend_gutenprint-kodak1400_print.o `test -f 'kodak1400_print.c' || echo '$(srcdir)/'`kodak1400_print.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-kodak1400_print.Tpo $(DEPDIR)/backend_gutenprint-kodak1400_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kodak1400_print.c' object='backend_gutenprint-kodak1400_print.o' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_kodak1400.o: backend_kodak1400.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_kodak1400.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_kodak1400.Tpo -c -o backend_gutenprint-backend_kodak1400.o `test -f 'backend_kodak1400.c' || echo '$(srcdir)/'`backend_kodak1400.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_kodak1400.Tpo $(DEPDIR)/backend_gutenprint-backend_kodak1400.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_kodak1400.c' object='backend_gutenprint-backend_kodak1400.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-kodak1400_print.o `test -f 'kodak1400_print.c' || echo '$(srcdir)/'`kodak1400_print.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_kodak1400.o `test -f 'backend_kodak1400.c' || echo '$(srcdir)/'`backend_kodak1400.c -backend_gutenprint-kodak1400_print.obj: kodak1400_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-kodak1400_print.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-kodak1400_print.Tpo -c -o backend_gutenprint-kodak1400_print.obj `if test -f 'kodak1400_print.c'; then $(CYGPATH_W) 'kodak1400_print.c'; else $(CYGPATH_W) '$(srcdir)/kodak1400_print.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-kodak1400_print.Tpo $(DEPDIR)/backend_gutenprint-kodak1400_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kodak1400_print.c' object='backend_gutenprint-kodak1400_print.obj' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_kodak1400.obj: backend_kodak1400.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_kodak1400.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_kodak1400.Tpo -c -o backend_gutenprint-backend_kodak1400.obj `if test -f 'backend_kodak1400.c'; then $(CYGPATH_W) 'backend_kodak1400.c'; else $(CYGPATH_W) '$(srcdir)/backend_kodak1400.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_kodak1400.Tpo $(DEPDIR)/backend_gutenprint-backend_kodak1400.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_kodak1400.c' object='backend_gutenprint-backend_kodak1400.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-kodak1400_print.obj `if test -f 'kodak1400_print.c'; then $(CYGPATH_W) 'kodak1400_print.c'; else $(CYGPATH_W) '$(srcdir)/kodak1400_print.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_kodak1400.obj `if test -f 'backend_kodak1400.c'; then $(CYGPATH_W) 'backend_kodak1400.c'; else $(CYGPATH_W) '$(srcdir)/backend_kodak1400.c'; fi` -backend_gutenprint-kodak6800_print.o: kodak6800_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-kodak6800_print.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-kodak6800_print.Tpo -c -o backend_gutenprint-kodak6800_print.o `test -f 'kodak6800_print.c' || echo '$(srcdir)/'`kodak6800_print.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-kodak6800_print.Tpo $(DEPDIR)/backend_gutenprint-kodak6800_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kodak6800_print.c' object='backend_gutenprint-kodak6800_print.o' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_kodak6800.o: backend_kodak6800.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_kodak6800.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_kodak6800.Tpo -c -o backend_gutenprint-backend_kodak6800.o `test -f 'backend_kodak6800.c' || echo '$(srcdir)/'`backend_kodak6800.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_kodak6800.Tpo $(DEPDIR)/backend_gutenprint-backend_kodak6800.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_kodak6800.c' object='backend_gutenprint-backend_kodak6800.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-kodak6800_print.o `test -f 'kodak6800_print.c' || echo '$(srcdir)/'`kodak6800_print.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_kodak6800.o `test -f 'backend_kodak6800.c' || echo '$(srcdir)/'`backend_kodak6800.c -backend_gutenprint-kodak6800_print.obj: kodak6800_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-kodak6800_print.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-kodak6800_print.Tpo -c -o backend_gutenprint-kodak6800_print.obj `if test -f 'kodak6800_print.c'; then $(CYGPATH_W) 'kodak6800_print.c'; else $(CYGPATH_W) '$(srcdir)/kodak6800_print.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-kodak6800_print.Tpo $(DEPDIR)/backend_gutenprint-kodak6800_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kodak6800_print.c' object='backend_gutenprint-kodak6800_print.obj' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_kodak6800.obj: backend_kodak6800.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_kodak6800.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_kodak6800.Tpo -c -o backend_gutenprint-backend_kodak6800.obj `if test -f 'backend_kodak6800.c'; then $(CYGPATH_W) 'backend_kodak6800.c'; else $(CYGPATH_W) '$(srcdir)/backend_kodak6800.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_kodak6800.Tpo $(DEPDIR)/backend_gutenprint-backend_kodak6800.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_kodak6800.c' object='backend_gutenprint-backend_kodak6800.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-kodak6800_print.obj `if test -f 'kodak6800_print.c'; then $(CYGPATH_W) 'kodak6800_print.c'; else $(CYGPATH_W) '$(srcdir)/kodak6800_print.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_kodak6800.obj `if test -f 'backend_kodak6800.c'; then $(CYGPATH_W) 'backend_kodak6800.c'; else $(CYGPATH_W) '$(srcdir)/backend_kodak6800.c'; fi` -backend_gutenprint-kodak605_print.o: kodak605_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-kodak605_print.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-kodak605_print.Tpo -c -o backend_gutenprint-kodak605_print.o `test -f 'kodak605_print.c' || echo '$(srcdir)/'`kodak605_print.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-kodak605_print.Tpo $(DEPDIR)/backend_gutenprint-kodak605_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kodak605_print.c' object='backend_gutenprint-kodak605_print.o' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_kodak605.o: backend_kodak605.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_kodak605.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_kodak605.Tpo -c -o backend_gutenprint-backend_kodak605.o `test -f 'backend_kodak605.c' || echo '$(srcdir)/'`backend_kodak605.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_kodak605.Tpo $(DEPDIR)/backend_gutenprint-backend_kodak605.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_kodak605.c' object='backend_gutenprint-backend_kodak605.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-kodak605_print.o `test -f 'kodak605_print.c' || echo '$(srcdir)/'`kodak605_print.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_kodak605.o `test -f 'backend_kodak605.c' || echo '$(srcdir)/'`backend_kodak605.c -backend_gutenprint-kodak605_print.obj: kodak605_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-kodak605_print.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-kodak605_print.Tpo -c -o backend_gutenprint-kodak605_print.obj `if test -f 'kodak605_print.c'; then $(CYGPATH_W) 'kodak605_print.c'; else $(CYGPATH_W) '$(srcdir)/kodak605_print.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-kodak605_print.Tpo $(DEPDIR)/backend_gutenprint-kodak605_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kodak605_print.c' object='backend_gutenprint-kodak605_print.obj' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_kodak605.obj: backend_kodak605.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_kodak605.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_kodak605.Tpo -c -o backend_gutenprint-backend_kodak605.obj `if test -f 'backend_kodak605.c'; then $(CYGPATH_W) 'backend_kodak605.c'; else $(CYGPATH_W) '$(srcdir)/backend_kodak605.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_kodak605.Tpo $(DEPDIR)/backend_gutenprint-backend_kodak605.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_kodak605.c' object='backend_gutenprint-backend_kodak605.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-kodak605_print.obj `if test -f 'kodak605_print.c'; then $(CYGPATH_W) 'kodak605_print.c'; else $(CYGPATH_W) '$(srcdir)/kodak605_print.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_kodak605.obj `if test -f 'backend_kodak605.c'; then $(CYGPATH_W) 'backend_kodak605.c'; else $(CYGPATH_W) '$(srcdir)/backend_kodak605.c'; fi` -backend_gutenprint-shinko_s2145_print.o: shinko_s2145_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-shinko_s2145_print.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-shinko_s2145_print.Tpo -c -o backend_gutenprint-shinko_s2145_print.o `test -f 'shinko_s2145_print.c' || echo '$(srcdir)/'`shinko_s2145_print.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-shinko_s2145_print.Tpo $(DEPDIR)/backend_gutenprint-shinko_s2145_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='shinko_s2145_print.c' object='backend_gutenprint-shinko_s2145_print.o' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_shinkos2145.o: backend_shinkos2145.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_shinkos2145.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_shinkos2145.Tpo -c -o backend_gutenprint-backend_shinkos2145.o `test -f 'backend_shinkos2145.c' || echo '$(srcdir)/'`backend_shinkos2145.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_shinkos2145.Tpo $(DEPDIR)/backend_gutenprint-backend_shinkos2145.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_shinkos2145.c' object='backend_gutenprint-backend_shinkos2145.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-shinko_s2145_print.o `test -f 'shinko_s2145_print.c' || echo '$(srcdir)/'`shinko_s2145_print.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_shinkos2145.o `test -f 'backend_shinkos2145.c' || echo '$(srcdir)/'`backend_shinkos2145.c -backend_gutenprint-shinko_s2145_print.obj: shinko_s2145_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-shinko_s2145_print.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-shinko_s2145_print.Tpo -c -o backend_gutenprint-shinko_s2145_print.obj `if test -f 'shinko_s2145_print.c'; then $(CYGPATH_W) 'shinko_s2145_print.c'; else $(CYGPATH_W) '$(srcdir)/shinko_s2145_print.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-shinko_s2145_print.Tpo $(DEPDIR)/backend_gutenprint-shinko_s2145_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='shinko_s2145_print.c' object='backend_gutenprint-shinko_s2145_print.obj' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_shinkos2145.obj: backend_shinkos2145.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_shinkos2145.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_shinkos2145.Tpo -c -o backend_gutenprint-backend_shinkos2145.obj `if test -f 'backend_shinkos2145.c'; then $(CYGPATH_W) 'backend_shinkos2145.c'; else $(CYGPATH_W) '$(srcdir)/backend_shinkos2145.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_shinkos2145.Tpo $(DEPDIR)/backend_gutenprint-backend_shinkos2145.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_shinkos2145.c' object='backend_gutenprint-backend_shinkos2145.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-shinko_s2145_print.obj `if test -f 'shinko_s2145_print.c'; then $(CYGPATH_W) 'shinko_s2145_print.c'; else $(CYGPATH_W) '$(srcdir)/shinko_s2145_print.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_shinkos2145.obj `if test -f 'backend_shinkos2145.c'; then $(CYGPATH_W) 'backend_shinkos2145.c'; else $(CYGPATH_W) '$(srcdir)/backend_shinkos2145.c'; fi` -backend_gutenprint-sony_updr150_print.o: sony_updr150_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-sony_updr150_print.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-sony_updr150_print.Tpo -c -o backend_gutenprint-sony_updr150_print.o `test -f 'sony_updr150_print.c' || echo '$(srcdir)/'`sony_updr150_print.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-sony_updr150_print.Tpo $(DEPDIR)/backend_gutenprint-sony_updr150_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sony_updr150_print.c' object='backend_gutenprint-sony_updr150_print.o' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_sonyupdr150.o: backend_sonyupdr150.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_sonyupdr150.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_sonyupdr150.Tpo -c -o backend_gutenprint-backend_sonyupdr150.o `test -f 'backend_sonyupdr150.c' || echo '$(srcdir)/'`backend_sonyupdr150.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_sonyupdr150.Tpo $(DEPDIR)/backend_gutenprint-backend_sonyupdr150.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_sonyupdr150.c' object='backend_gutenprint-backend_sonyupdr150.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-sony_updr150_print.o `test -f 'sony_updr150_print.c' || echo '$(srcdir)/'`sony_updr150_print.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_sonyupdr150.o `test -f 'backend_sonyupdr150.c' || echo '$(srcdir)/'`backend_sonyupdr150.c -backend_gutenprint-sony_updr150_print.obj: sony_updr150_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-sony_updr150_print.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-sony_updr150_print.Tpo -c -o backend_gutenprint-sony_updr150_print.obj `if test -f 'sony_updr150_print.c'; then $(CYGPATH_W) 'sony_updr150_print.c'; else $(CYGPATH_W) '$(srcdir)/sony_updr150_print.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-sony_updr150_print.Tpo $(DEPDIR)/backend_gutenprint-sony_updr150_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sony_updr150_print.c' object='backend_gutenprint-sony_updr150_print.obj' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_sonyupdr150.obj: backend_sonyupdr150.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_sonyupdr150.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_sonyupdr150.Tpo -c -o backend_gutenprint-backend_sonyupdr150.obj `if test -f 'backend_sonyupdr150.c'; then $(CYGPATH_W) 'backend_sonyupdr150.c'; else $(CYGPATH_W) '$(srcdir)/backend_sonyupdr150.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_sonyupdr150.Tpo $(DEPDIR)/backend_gutenprint-backend_sonyupdr150.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_sonyupdr150.c' object='backend_gutenprint-backend_sonyupdr150.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-sony_updr150_print.obj `if test -f 'sony_updr150_print.c'; then $(CYGPATH_W) 'sony_updr150_print.c'; else $(CYGPATH_W) '$(srcdir)/sony_updr150_print.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_sonyupdr150.obj `if test -f 'backend_sonyupdr150.c'; then $(CYGPATH_W) 'backend_sonyupdr150.c'; else $(CYGPATH_W) '$(srcdir)/backend_sonyupdr150.c'; fi` -backend_gutenprint-dnpds40_print.o: dnpds40_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-dnpds40_print.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-dnpds40_print.Tpo -c -o backend_gutenprint-dnpds40_print.o `test -f 'dnpds40_print.c' || echo '$(srcdir)/'`dnpds40_print.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-dnpds40_print.Tpo $(DEPDIR)/backend_gutenprint-dnpds40_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dnpds40_print.c' object='backend_gutenprint-dnpds40_print.o' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_dnpds40.o: backend_dnpds40.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_dnpds40.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_dnpds40.Tpo -c -o backend_gutenprint-backend_dnpds40.o `test -f 'backend_dnpds40.c' || echo '$(srcdir)/'`backend_dnpds40.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_dnpds40.Tpo $(DEPDIR)/backend_gutenprint-backend_dnpds40.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_dnpds40.c' object='backend_gutenprint-backend_dnpds40.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-dnpds40_print.o `test -f 'dnpds40_print.c' || echo '$(srcdir)/'`dnpds40_print.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_dnpds40.o `test -f 'backend_dnpds40.c' || echo '$(srcdir)/'`backend_dnpds40.c -backend_gutenprint-dnpds40_print.obj: dnpds40_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-dnpds40_print.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-dnpds40_print.Tpo -c -o backend_gutenprint-dnpds40_print.obj `if test -f 'dnpds40_print.c'; then $(CYGPATH_W) 'dnpds40_print.c'; else $(CYGPATH_W) '$(srcdir)/dnpds40_print.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-dnpds40_print.Tpo $(DEPDIR)/backend_gutenprint-dnpds40_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dnpds40_print.c' object='backend_gutenprint-dnpds40_print.obj' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_dnpds40.obj: backend_dnpds40.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_dnpds40.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_dnpds40.Tpo -c -o backend_gutenprint-backend_dnpds40.obj `if test -f 'backend_dnpds40.c'; then $(CYGPATH_W) 'backend_dnpds40.c'; else $(CYGPATH_W) '$(srcdir)/backend_dnpds40.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_dnpds40.Tpo $(DEPDIR)/backend_gutenprint-backend_dnpds40.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_dnpds40.c' object='backend_gutenprint-backend_dnpds40.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-dnpds40_print.obj `if test -f 'dnpds40_print.c'; then $(CYGPATH_W) 'dnpds40_print.c'; else $(CYGPATH_W) '$(srcdir)/dnpds40_print.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_dnpds40.obj `if test -f 'backend_dnpds40.c'; then $(CYGPATH_W) 'backend_dnpds40.c'; else $(CYGPATH_W) '$(srcdir)/backend_dnpds40.c'; fi` -backend_gutenprint-mitsu70x_print.o: mitsu70x_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-mitsu70x_print.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-mitsu70x_print.Tpo -c -o backend_gutenprint-mitsu70x_print.o `test -f 'mitsu70x_print.c' || echo '$(srcdir)/'`mitsu70x_print.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-mitsu70x_print.Tpo $(DEPDIR)/backend_gutenprint-mitsu70x_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mitsu70x_print.c' object='backend_gutenprint-mitsu70x_print.o' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_mitsu70x.o: backend_mitsu70x.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_mitsu70x.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_mitsu70x.Tpo -c -o backend_gutenprint-backend_mitsu70x.o `test -f 'backend_mitsu70x.c' || echo '$(srcdir)/'`backend_mitsu70x.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_mitsu70x.Tpo $(DEPDIR)/backend_gutenprint-backend_mitsu70x.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_mitsu70x.c' object='backend_gutenprint-backend_mitsu70x.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-mitsu70x_print.o `test -f 'mitsu70x_print.c' || echo '$(srcdir)/'`mitsu70x_print.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_mitsu70x.o `test -f 'backend_mitsu70x.c' || echo '$(srcdir)/'`backend_mitsu70x.c -backend_gutenprint-mitsu70x_print.obj: mitsu70x_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-mitsu70x_print.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-mitsu70x_print.Tpo -c -o backend_gutenprint-mitsu70x_print.obj `if test -f 'mitsu70x_print.c'; then $(CYGPATH_W) 'mitsu70x_print.c'; else $(CYGPATH_W) '$(srcdir)/mitsu70x_print.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-mitsu70x_print.Tpo $(DEPDIR)/backend_gutenprint-mitsu70x_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mitsu70x_print.c' object='backend_gutenprint-mitsu70x_print.obj' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_mitsu70x.obj: backend_mitsu70x.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_mitsu70x.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_mitsu70x.Tpo -c -o backend_gutenprint-backend_mitsu70x.obj `if test -f 'backend_mitsu70x.c'; then $(CYGPATH_W) 'backend_mitsu70x.c'; else $(CYGPATH_W) '$(srcdir)/backend_mitsu70x.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_mitsu70x.Tpo $(DEPDIR)/backend_gutenprint-backend_mitsu70x.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_mitsu70x.c' object='backend_gutenprint-backend_mitsu70x.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-mitsu70x_print.obj `if test -f 'mitsu70x_print.c'; then $(CYGPATH_W) 'mitsu70x_print.c'; else $(CYGPATH_W) '$(srcdir)/mitsu70x_print.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_mitsu70x.obj `if test -f 'backend_mitsu70x.c'; then $(CYGPATH_W) 'backend_mitsu70x.c'; else $(CYGPATH_W) '$(srcdir)/backend_mitsu70x.c'; fi` -backend_gutenprint-citizencw01_print.o: citizencw01_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-citizencw01_print.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-citizencw01_print.Tpo -c -o backend_gutenprint-citizencw01_print.o `test -f 'citizencw01_print.c' || echo '$(srcdir)/'`citizencw01_print.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-citizencw01_print.Tpo $(DEPDIR)/backend_gutenprint-citizencw01_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='citizencw01_print.c' object='backend_gutenprint-citizencw01_print.o' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_citizencw01.o: backend_citizencw01.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_citizencw01.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_citizencw01.Tpo -c -o backend_gutenprint-backend_citizencw01.o `test -f 'backend_citizencw01.c' || echo '$(srcdir)/'`backend_citizencw01.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_citizencw01.Tpo $(DEPDIR)/backend_gutenprint-backend_citizencw01.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_citizencw01.c' object='backend_gutenprint-backend_citizencw01.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-citizencw01_print.o `test -f 'citizencw01_print.c' || echo '$(srcdir)/'`citizencw01_print.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_citizencw01.o `test -f 'backend_citizencw01.c' || echo '$(srcdir)/'`backend_citizencw01.c -backend_gutenprint-citizencw01_print.obj: citizencw01_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-citizencw01_print.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-citizencw01_print.Tpo -c -o backend_gutenprint-citizencw01_print.obj `if test -f 'citizencw01_print.c'; then $(CYGPATH_W) 'citizencw01_print.c'; else $(CYGPATH_W) '$(srcdir)/citizencw01_print.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-citizencw01_print.Tpo $(DEPDIR)/backend_gutenprint-citizencw01_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='citizencw01_print.c' object='backend_gutenprint-citizencw01_print.obj' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_citizencw01.obj: backend_citizencw01.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_citizencw01.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_citizencw01.Tpo -c -o backend_gutenprint-backend_citizencw01.obj `if test -f 'backend_citizencw01.c'; then $(CYGPATH_W) 'backend_citizencw01.c'; else $(CYGPATH_W) '$(srcdir)/backend_citizencw01.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_citizencw01.Tpo $(DEPDIR)/backend_gutenprint-backend_citizencw01.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_citizencw01.c' object='backend_gutenprint-backend_citizencw01.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-citizencw01_print.obj `if test -f 'citizencw01_print.c'; then $(CYGPATH_W) 'citizencw01_print.c'; else $(CYGPATH_W) '$(srcdir)/citizencw01_print.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_citizencw01.obj `if test -f 'backend_citizencw01.c'; then $(CYGPATH_W) 'backend_citizencw01.c'; else $(CYGPATH_W) '$(srcdir)/backend_citizencw01.c'; fi` -backend_gutenprint-mitsu9550_print.o: mitsu9550_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-mitsu9550_print.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-mitsu9550_print.Tpo -c -o backend_gutenprint-mitsu9550_print.o `test -f 'mitsu9550_print.c' || echo '$(srcdir)/'`mitsu9550_print.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-mitsu9550_print.Tpo $(DEPDIR)/backend_gutenprint-mitsu9550_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mitsu9550_print.c' object='backend_gutenprint-mitsu9550_print.o' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_mitsu9550.o: backend_mitsu9550.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_mitsu9550.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_mitsu9550.Tpo -c -o backend_gutenprint-backend_mitsu9550.o `test -f 'backend_mitsu9550.c' || echo '$(srcdir)/'`backend_mitsu9550.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_mitsu9550.Tpo $(DEPDIR)/backend_gutenprint-backend_mitsu9550.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_mitsu9550.c' object='backend_gutenprint-backend_mitsu9550.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-mitsu9550_print.o `test -f 'mitsu9550_print.c' || echo '$(srcdir)/'`mitsu9550_print.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_mitsu9550.o `test -f 'backend_mitsu9550.c' || echo '$(srcdir)/'`backend_mitsu9550.c -backend_gutenprint-mitsu9550_print.obj: mitsu9550_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-mitsu9550_print.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-mitsu9550_print.Tpo -c -o backend_gutenprint-mitsu9550_print.obj `if test -f 'mitsu9550_print.c'; then $(CYGPATH_W) 'mitsu9550_print.c'; else $(CYGPATH_W) '$(srcdir)/mitsu9550_print.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-mitsu9550_print.Tpo $(DEPDIR)/backend_gutenprint-mitsu9550_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mitsu9550_print.c' object='backend_gutenprint-mitsu9550_print.obj' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_mitsu9550.obj: backend_mitsu9550.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_mitsu9550.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_mitsu9550.Tpo -c -o backend_gutenprint-backend_mitsu9550.obj `if test -f 'backend_mitsu9550.c'; then $(CYGPATH_W) 'backend_mitsu9550.c'; else $(CYGPATH_W) '$(srcdir)/backend_mitsu9550.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_mitsu9550.Tpo $(DEPDIR)/backend_gutenprint-backend_mitsu9550.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_mitsu9550.c' object='backend_gutenprint-backend_mitsu9550.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-mitsu9550_print.obj `if test -f 'mitsu9550_print.c'; then $(CYGPATH_W) 'mitsu9550_print.c'; else $(CYGPATH_W) '$(srcdir)/mitsu9550_print.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_mitsu9550.obj `if test -f 'backend_mitsu9550.c'; then $(CYGPATH_W) 'backend_mitsu9550.c'; else $(CYGPATH_W) '$(srcdir)/backend_mitsu9550.c'; fi` backend_gutenprint-backend_common.o: backend_common.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_common.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_common.Tpo -c -o backend_gutenprint-backend_common.o `test -f 'backend_common.c' || echo '$(srcdir)/'`backend_common.c @@ -1313,47 +1308,47 @@ backend_gutenprint-backend_common.obj: backend_common.c @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_common.obj `if test -f 'backend_common.c'; then $(CYGPATH_W) 'backend_common.c'; else $(CYGPATH_W) '$(srcdir)/backend_common.c'; fi` -backend_gutenprint-shinko_s1245_print.o: shinko_s1245_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-shinko_s1245_print.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-shinko_s1245_print.Tpo -c -o backend_gutenprint-shinko_s1245_print.o `test -f 'shinko_s1245_print.c' || echo '$(srcdir)/'`shinko_s1245_print.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-shinko_s1245_print.Tpo $(DEPDIR)/backend_gutenprint-shinko_s1245_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='shinko_s1245_print.c' object='backend_gutenprint-shinko_s1245_print.o' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_shinkos1245.o: backend_shinkos1245.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_shinkos1245.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_shinkos1245.Tpo -c -o backend_gutenprint-backend_shinkos1245.o `test -f 'backend_shinkos1245.c' || echo '$(srcdir)/'`backend_shinkos1245.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_shinkos1245.Tpo $(DEPDIR)/backend_gutenprint-backend_shinkos1245.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_shinkos1245.c' object='backend_gutenprint-backend_shinkos1245.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-shinko_s1245_print.o `test -f 'shinko_s1245_print.c' || echo '$(srcdir)/'`shinko_s1245_print.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_shinkos1245.o `test -f 'backend_shinkos1245.c' || echo '$(srcdir)/'`backend_shinkos1245.c -backend_gutenprint-shinko_s1245_print.obj: shinko_s1245_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-shinko_s1245_print.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-shinko_s1245_print.Tpo -c -o backend_gutenprint-shinko_s1245_print.obj `if test -f 'shinko_s1245_print.c'; then $(CYGPATH_W) 'shinko_s1245_print.c'; else $(CYGPATH_W) '$(srcdir)/shinko_s1245_print.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-shinko_s1245_print.Tpo $(DEPDIR)/backend_gutenprint-shinko_s1245_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='shinko_s1245_print.c' object='backend_gutenprint-shinko_s1245_print.obj' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_shinkos1245.obj: backend_shinkos1245.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_shinkos1245.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_shinkos1245.Tpo -c -o backend_gutenprint-backend_shinkos1245.obj `if test -f 'backend_shinkos1245.c'; then $(CYGPATH_W) 'backend_shinkos1245.c'; else $(CYGPATH_W) '$(srcdir)/backend_shinkos1245.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_shinkos1245.Tpo $(DEPDIR)/backend_gutenprint-backend_shinkos1245.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_shinkos1245.c' object='backend_gutenprint-backend_shinkos1245.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-shinko_s1245_print.obj `if test -f 'shinko_s1245_print.c'; then $(CYGPATH_W) 'shinko_s1245_print.c'; else $(CYGPATH_W) '$(srcdir)/shinko_s1245_print.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_shinkos1245.obj `if test -f 'backend_shinkos1245.c'; then $(CYGPATH_W) 'backend_shinkos1245.c'; else $(CYGPATH_W) '$(srcdir)/backend_shinkos1245.c'; fi` -backend_gutenprint-shinko_s6145_print.o: shinko_s6145_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-shinko_s6145_print.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-shinko_s6145_print.Tpo -c -o backend_gutenprint-shinko_s6145_print.o `test -f 'shinko_s6145_print.c' || echo '$(srcdir)/'`shinko_s6145_print.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-shinko_s6145_print.Tpo $(DEPDIR)/backend_gutenprint-shinko_s6145_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='shinko_s6145_print.c' object='backend_gutenprint-shinko_s6145_print.o' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_shinkos6145.o: backend_shinkos6145.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_shinkos6145.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_shinkos6145.Tpo -c -o backend_gutenprint-backend_shinkos6145.o `test -f 'backend_shinkos6145.c' || echo '$(srcdir)/'`backend_shinkos6145.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_shinkos6145.Tpo $(DEPDIR)/backend_gutenprint-backend_shinkos6145.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_shinkos6145.c' object='backend_gutenprint-backend_shinkos6145.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-shinko_s6145_print.o `test -f 'shinko_s6145_print.c' || echo '$(srcdir)/'`shinko_s6145_print.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_shinkos6145.o `test -f 'backend_shinkos6145.c' || echo '$(srcdir)/'`backend_shinkos6145.c -backend_gutenprint-shinko_s6145_print.obj: shinko_s6145_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-shinko_s6145_print.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-shinko_s6145_print.Tpo -c -o backend_gutenprint-shinko_s6145_print.obj `if test -f 'shinko_s6145_print.c'; then $(CYGPATH_W) 'shinko_s6145_print.c'; else $(CYGPATH_W) '$(srcdir)/shinko_s6145_print.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-shinko_s6145_print.Tpo $(DEPDIR)/backend_gutenprint-shinko_s6145_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='shinko_s6145_print.c' object='backend_gutenprint-shinko_s6145_print.obj' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_shinkos6145.obj: backend_shinkos6145.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_shinkos6145.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_shinkos6145.Tpo -c -o backend_gutenprint-backend_shinkos6145.obj `if test -f 'backend_shinkos6145.c'; then $(CYGPATH_W) 'backend_shinkos6145.c'; else $(CYGPATH_W) '$(srcdir)/backend_shinkos6145.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_shinkos6145.Tpo $(DEPDIR)/backend_gutenprint-backend_shinkos6145.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_shinkos6145.c' object='backend_gutenprint-backend_shinkos6145.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-shinko_s6145_print.obj `if test -f 'shinko_s6145_print.c'; then $(CYGPATH_W) 'shinko_s6145_print.c'; else $(CYGPATH_W) '$(srcdir)/shinko_s6145_print.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_shinkos6145.obj `if test -f 'backend_shinkos6145.c'; then $(CYGPATH_W) 'backend_shinkos6145.c'; else $(CYGPATH_W) '$(srcdir)/backend_shinkos6145.c'; fi` -backend_gutenprint-shinko_s6245_print.o: shinko_s6245_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-shinko_s6245_print.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-shinko_s6245_print.Tpo -c -o backend_gutenprint-shinko_s6245_print.o `test -f 'shinko_s6245_print.c' || echo '$(srcdir)/'`shinko_s6245_print.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-shinko_s6245_print.Tpo $(DEPDIR)/backend_gutenprint-shinko_s6245_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='shinko_s6245_print.c' object='backend_gutenprint-shinko_s6245_print.o' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_shinkos6245.o: backend_shinkos6245.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_shinkos6245.o -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_shinkos6245.Tpo -c -o backend_gutenprint-backend_shinkos6245.o `test -f 'backend_shinkos6245.c' || echo '$(srcdir)/'`backend_shinkos6245.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_shinkos6245.Tpo $(DEPDIR)/backend_gutenprint-backend_shinkos6245.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_shinkos6245.c' object='backend_gutenprint-backend_shinkos6245.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-shinko_s6245_print.o `test -f 'shinko_s6245_print.c' || echo '$(srcdir)/'`shinko_s6245_print.c +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_shinkos6245.o `test -f 'backend_shinkos6245.c' || echo '$(srcdir)/'`backend_shinkos6245.c -backend_gutenprint-shinko_s6245_print.obj: shinko_s6245_print.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-shinko_s6245_print.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-shinko_s6245_print.Tpo -c -o backend_gutenprint-shinko_s6245_print.obj `if test -f 'shinko_s6245_print.c'; then $(CYGPATH_W) 'shinko_s6245_print.c'; else $(CYGPATH_W) '$(srcdir)/shinko_s6245_print.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-shinko_s6245_print.Tpo $(DEPDIR)/backend_gutenprint-shinko_s6245_print.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='shinko_s6245_print.c' object='backend_gutenprint-shinko_s6245_print.obj' libtool=no @AMDEPBACKSLASH@ +backend_gutenprint-backend_shinkos6245.obj: backend_shinkos6245.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT backend_gutenprint-backend_shinkos6245.obj -MD -MP -MF $(DEPDIR)/backend_gutenprint-backend_shinkos6245.Tpo -c -o backend_gutenprint-backend_shinkos6245.obj `if test -f 'backend_shinkos6245.c'; then $(CYGPATH_W) 'backend_shinkos6245.c'; else $(CYGPATH_W) '$(srcdir)/backend_shinkos6245.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/backend_gutenprint-backend_shinkos6245.Tpo $(DEPDIR)/backend_gutenprint-backend_shinkos6245.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_shinkos6245.c' object='backend_gutenprint-backend_shinkos6245.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-shinko_s6245_print.obj `if test -f 'shinko_s6245_print.c'; then $(CYGPATH_W) 'shinko_s6245_print.c'; else $(CYGPATH_W) '$(srcdir)/shinko_s6245_print.c'; fi` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backend_gutenprint_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o backend_gutenprint-backend_shinkos6245.obj `if test -f 'backend_shinkos6245.c'; then $(CYGPATH_W) 'backend_shinkos6245.c'; else $(CYGPATH_W) '$(srcdir)/backend_shinkos6245.c'; fi` cups_genppd_@GUTENPRINT_RELEASE_VERSION@-genppd.o: genppd.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(cups_genppd_@GUTENPRINT_RELEASE_VERSION@_CFLAGS) $(CFLAGS) -MT cups_genppd_@GUTENPRINT_RELEASE_VERSION@-genppd.o -MD -MP -MF $(DEPDIR)/cups_genppd_@GUTENPRINT_RELEASE_VERSION@-genppd.Tpo -c -o cups_genppd_@GUTENPRINT_RELEASE_VERSION@-genppd.o `test -f 'genppd.c' || echo '$(srcdir)/'`genppd.c diff --git a/src/cups/selphy_print.c b/src/cups/backend_canonselphy.c index 8da09e0..4da082a 100644 --- a/src/cups/selphy_print.c +++ b/src/cups/backend_canonselphy.c @@ -1,7 +1,7 @@ /* * Canon SELPHY ES/CP series CUPS backend -- libusb-1.0 version * - * (c) 2007-2015 Solomon Peachy <pizza@shaftnet.org> + * (c) 2007-2016 Solomon Peachy <pizza@shaftnet.org> * * The latest version of this program can be found at: * @@ -91,9 +91,22 @@ struct printer_data { int16_t paper_codes[256]; int16_t pgcode_offset; /* Offset into printjob for paper type */ int16_t paper_code_offset; /* Offset in readback for paper type */ - int (*error_detect)(uint8_t *rdbuf); + int (*error_detect)(uint8_t *rdbuf); + char *(*pgcode_names)(uint8_t pgcode); }; +static char *generic_pgcode_names(uint8_t pgcode) +{ + switch(pgcode & 0xf) { + case 0x01: return "P"; + case 0x02: return "L"; + case 0x03: return "C"; + case 0x04: return "W"; + case 0x0f: return "None"; + default: return "Unknown"; + } +} + static int es1_error_detect(uint8_t *rdbuf) { if (rdbuf[1] == 0x01) { @@ -105,9 +118,11 @@ static int es1_error_detect(uint8_t *rdbuf) return 1; } else if (rdbuf[4] == 0x01 && rdbuf[5] == 0xff && rdbuf[6] == 0xff && rdbuf[7] == 0xff) { + ATTR("marker-levels=%d\n", 0); ERROR("No media loaded!\n"); return 1; } else if (rdbuf[0] == 0x0f) { + ATTR("marker-levels=%d\n", 0); ERROR("Out of media!\n"); return 1; } @@ -127,11 +142,13 @@ static int es2_error_detect(uint8_t *rdbuf) rdbuf[4] == 0x05 && rdbuf[5] == 0x05 && rdbuf[6] == 0x02) { + ATTR("marker-levels=%d\n", 0); ERROR("No media loaded!\n"); return 1; } if (rdbuf[0] == 0x14) { + ATTR("marker-levels=%d\n", 0); ERROR("Out of media!\n"); return 1; } @@ -145,6 +162,7 @@ static int es3_error_detect(uint8_t *rdbuf) if (rdbuf[10] == 0x0f) { ERROR("Communications Error\n"); } else if (rdbuf[10] == 0x01) { + ATTR("marker-levels=%d\n", 0); ERROR("No media loaded!\n"); } else { ERROR("Unknown error - %02x + %02x\n", @@ -153,6 +171,7 @@ static int es3_error_detect(uint8_t *rdbuf) return 1; } else if (rdbuf[8] == 0x03 && rdbuf[10] == 0x02) { + ATTR("marker-levels=%d\n", 0); ERROR("No media loaded!\n"); return 1; } else if (rdbuf[8] == 0x08 && @@ -182,10 +201,12 @@ static int es40_error_detect(uint8_t *rdbuf) if (rdbuf[3] == 0x01) ERROR("Generic communication error\n"); - else if (rdbuf[3] == 0x32) + else if (rdbuf[3] == 0x32) { + ATTR("marker-levels=%d\n", 0); ERROR("Cover open or media empty!\n"); - else + } else ERROR("Unknown error - %02x\n", rdbuf[3]); + return 1; } @@ -200,15 +221,18 @@ static int cp790_error_detect(uint8_t *rdbuf) ERROR("No paper tray loaded!\n"); return 1; } else if (rdbuf[3]) { - if ((rdbuf[3] & 0xf) == 0x02) // 0x12 0x22 + if ((rdbuf[3] & 0xf) == 0x02) { // 0x12 0x22 + ATTR("marker-levels=%d\n", 0); ERROR("No paper tray loaded!\n"); - else if ((rdbuf[3] & 0xf) == 0x03) // 0x13 0x23 + } else if ((rdbuf[3] & 0xf) == 0x03) { // 0x13 0x23 + ATTR("marker-levels=%d\n", 0); ERROR("Empty paper tray or feed error!\n"); - else if (rdbuf[3] == 0x11) + } else if (rdbuf[3] == 0x11) ERROR("Paper feed error!\n"); - else if (rdbuf[3] == 0x21) + else if (rdbuf[3] == 0x21) { + ATTR("marker-levels=%d\n", 0); ERROR("Ribbon depleted!\n"); - else + } else ERROR("Unknown error - %02x\n", rdbuf[3]); return 1; } @@ -216,19 +240,28 @@ static int cp790_error_detect(uint8_t *rdbuf) return 0; } +static char *cp10_pgcode_names(uint8_t pgcode) +{ + switch (pgcode) { + default: return "C"; + }; +} static int cp10_error_detect(uint8_t *rdbuf) { if (!rdbuf[2]) return 0; - if (rdbuf[2] == 0x80) + if (rdbuf[2] == 0x80) { + ATTR("marker-levels=%d\n", 0); ERROR("No ribbon loaded\n"); - else if (rdbuf[2] == 0x08) + } else if (rdbuf[2] == 0x08) { + ATTR("marker-levels=%d\n", 0); ERROR("Ribbon depleted!\n"); - else if (rdbuf[2] == 0x01) + } else if (rdbuf[2] == 0x01) { + ATTR("marker-levels=%d\n", 0); ERROR("No paper loaded!\n"); - else + } else ERROR("Unknown error - %02x\n", rdbuf[2]); return 1; } @@ -238,13 +271,15 @@ static int cpxxx_error_detect(uint8_t *rdbuf) if (!rdbuf[2]) return 0; - if (rdbuf[2] == 0x01) + if (rdbuf[2] == 0x01) { + ATTR("marker-levels=%d\n", 0); ERROR("Paper feed problem!\n"); - else if (rdbuf[2] == 0x04) + } else if (rdbuf[2] == 0x04) ERROR("Ribbon problem!\n"); - else if (rdbuf[2] == 0x08) + else if (rdbuf[2] == 0x08) { + ATTR("marker-levels=%d\n", 0); ERROR("Ribbon depleted!\n"); - else + } else ERROR("Unknown error - %02x\n", rdbuf[2]); return 1; } @@ -264,6 +299,7 @@ static struct printer_data selphy_printers[] = { .pgcode_offset = 3, .paper_code_offset = 6, .error_detect = es1_error_detect, + .pgcode_names = generic_pgcode_names, }, { .type = P_ES2_20, .model = "SELPHY ES2/ES20", @@ -279,6 +315,7 @@ static struct printer_data selphy_printers[] = { .pgcode_offset = 2, .paper_code_offset = 4, .error_detect = es2_error_detect, + .pgcode_names = generic_pgcode_names, }, { .type = P_ES3_30, .model = "SELPHY ES3/ES30", @@ -294,6 +331,7 @@ static struct printer_data selphy_printers[] = { .pgcode_offset = 2, .paper_code_offset = -1, .error_detect = es3_error_detect, + .pgcode_names = NULL, }, { .type = P_ES40, .model = "SELPHY ES40", @@ -309,6 +347,7 @@ static struct printer_data selphy_printers[] = { .pgcode_offset = 2, .paper_code_offset = 11, .error_detect = es40_error_detect, + .pgcode_names = generic_pgcode_names, }, { .type = P_CP790, .model = "SELPHY CP790", @@ -321,10 +360,10 @@ static struct printer_data selphy_printers[] = { .done_c_readback = { 0x00, 0x00, 0x10, 0x00, -1, -1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02 }, .clear_error = { 0x40, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, .clear_error_len = 12, - // .paper_codes .pgcode_offset = 2, .paper_code_offset = -1, /* Uses a different technique */ .error_detect = cp790_error_detect, + .pgcode_names = generic_pgcode_names, }, { .type = P_CP_XXX, .model = "SELPHY CP Series (!CP-10/CP790)", @@ -337,10 +376,10 @@ static struct printer_data selphy_printers[] = { .done_c_readback = { 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, -1, 0x00, 0x00, 0x00, 0x00, -1 }, .clear_error = { 0x40, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, .clear_error_len = 12, - // .paper_codes .pgcode_offset = 3, .paper_code_offset = 6, .error_detect = cpxxx_error_detect, + .pgcode_names = generic_pgcode_names, }, { .type = P_CP10, .model = "SELPHY CP-10", @@ -353,10 +392,10 @@ static struct printer_data selphy_printers[] = { .done_c_readback = { 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, .clear_error = { 0x40, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, .clear_error_len = 12, - // .paper_codes - .pgcode_offset = -1, + .pgcode_offset = 2, .paper_code_offset = -1, .error_detect = cp10_error_detect, + .pgcode_names = cp10_pgcode_names, }, { .type = -1 }, }; @@ -592,25 +631,46 @@ static void canonselphy_teardown(void *vctx) { free(ctx); } -static int canonselphy_early_parse(void *vctx, int data_fd) +static int canonselphy_read_parse(void *vctx, int data_fd) { struct canonselphy_ctx *ctx = vctx; - int printer_type, i; + int i, remain; + int printer_type; + int offset = 0; if (!ctx) - return -1; + return CUPS_BACKEND_FAILED; - /* Figure out printer this file is intended for */ - i = read(data_fd, ctx->buffer, MAX_HEADER); - if (i != MAX_HEADER) { + /* The CP900 job *may* have a 4-byte null footer after the + job contents. Ignore it if it comes through here.. */ + i = read(data_fd, ctx->buffer, 4); + if (i != 4) { if (i == 0) - return -1; - ERROR("Read failed (%d/%d/%d)\n", - i, 0, MAX_HEADER); + return CUPS_BACKEND_CANCEL; + ERROR("Read failed (%d/%d)\n", i, 4); perror("ERROR: Read failed"); - return -1; + return CUPS_BACKEND_FAILED; + } + /* if it's not the null header.. don't ignore! */ + if (ctx->buffer[0] != 0 || + ctx->buffer[1] != 0 || + ctx->buffer[2] != 0 || + ctx->buffer[3] != 0) { + offset = 4; } + /* Read the rest of the header.. */ + i = read(data_fd, ctx->buffer + offset, MAX_HEADER - offset); + if (i != MAX_HEADER - offset) { + if (i == 0) + return CUPS_BACKEND_CANCEL; + ERROR("Read failed (%d/%d)\n", + i, MAX_HEADER - offset); + perror("ERROR: Read failed"); + return CUPS_BACKEND_FAILED; + } + + /* Figure out printer this file is intended for */ printer_type = parse_printjob(ctx->buffer, &ctx->bw_mode, &ctx->plane_len); /* Special cases for some models */ if (printer_type == P_ES40_CP790) { @@ -628,39 +688,27 @@ static int canonselphy_early_parse(void *vctx, int data_fd) } } if (!ctx->printer) { - ERROR("Unrecognized printjob file format!\n"); - return -1; + ERROR("Error mapping printjob to printer type!\n"); + return CUPS_BACKEND_FAILED; } INFO("%sFile intended for a '%s' printer\n", ctx->bw_mode? "B/W " : "", ctx->printer->model); if (ctx->printer->type != ctx->type) { ERROR("Printer/Job mismatch (%d/%d)\n", ctx->type, ctx->printer->type); - return -1; + return CUPS_BACKEND_CANCEL; } - ctx->plane_len += 12; /* Add in plane header length! */ + /* Paper code setup */ if (ctx->printer->pgcode_offset != -1) ctx->paper_code = ctx->printer->paper_codes[ctx->buffer[ctx->printer->pgcode_offset]]; else ctx->paper_code = -1; - return printer_type; -} - -static int canonselphy_read_parse(void *vctx, int data_fd) -{ - struct canonselphy_ctx *ctx = vctx; - int i, remain; - - if (!ctx) - return CUPS_BACKEND_FAILED; - - /* Perform early parsing */ - i = canonselphy_early_parse(ctx, data_fd); - if (i < 0) - return CUPS_BACKEND_FAILED; + /* Add in plane header length! */ + ctx->plane_len += 12; + /* Now prep for the job */ if (ctx->header) { free(ctx->header); ctx->header = NULL; @@ -754,6 +802,13 @@ static int canonselphy_main_loop(void *vctx, int copies) { if (ret < 0) return CUPS_BACKEND_FAILED; + ATTR("marker-colors=#00FFFF#FF00FF#FFFF00\n"); + ATTR("marker-high-levels=100\n"); + ATTR("marker-low-levels=10\n"); + ATTR("marker-names='%s'\n", ctx->printer->pgcode_names? ctx->printer->pgcode_names(rdbuf[ctx->printer->paper_code_offset]) : "Unknown"); + ATTR("marker-types=ribbonWax\n"); + ATTR("marker-levels=%d\n", -3); /* ie Unknown but OK */ + top: if (state != last_state) { @@ -909,7 +964,7 @@ top: if (ctx->cp900) state = S_PRINTER_CP900_FOOTER; else - state = S_PRINTER_DONE; + state = S_FINISHED; } break; case S_PRINTER_CP900_FOOTER: { @@ -960,10 +1015,7 @@ static int canonselphy_cmdline_arg(void *vctx, int argc, char **argv) if (!ctx) return -1; - - /* Reset arg parsing */ - optind = 1; - opterr = 0; + while ((i = getopt(argc, argv, GETOPT_LIST_GLOBAL)) >= 0) { switch(i) { GETOPT_PROCESS_GLOBAL @@ -977,7 +1029,7 @@ static int canonselphy_cmdline_arg(void *vctx, int argc, char **argv) struct dyesub_backend canonselphy_backend = { .name = "Canon SELPHY CP/ES", - .version = "0.89", + .version = "0.91", .uri_prefix = "canonselphy", .cmdline_arg = canonselphy_cmdline_arg, .init = canonselphy_init, @@ -1285,7 +1337,7 @@ struct dyesub_backend canonselphy_backend = { Init func: 40 00 00 [pgcode] 00 00 00 00 00 00 00 00 Plane func: 40 01 00 [plane] [length, 32-bit LE] 00 00 00 00 - End func: 00 00 00 00 # NOTE: CP900 only, and not necessary! + End func: 00 00 00 00 # NOTE: Present (and necessary) on CP900 only. Error clear: 40 10 00 00 00 00 00 00 00 00 00 00 @@ -1331,13 +1383,13 @@ struct dyesub_backend canonselphy_backend = { to signify nothing being loaded. *************************************************************************** - Selphy CP820/CP910: + Selphy CP820/CP910/CP1000/CP1200: Radically different spool file format! 300dpi, same print sizes, but also adding a 50x50mm sticker and 22x17.3mm ministickers, though I think the driver treats all of those as 'C' sizes for printing purposes. - Printer does *not* apparently require use of a spooler! + Printer does *not* require use of a spooler! Huzzah! 32-byte header: @@ -1364,4 +1416,17 @@ struct dyesub_backend canonselphy_backend = { L == 5087264 == 1695744 * 3 + 32 (1536*1104) C == 2180384 == 726784 * 3 + 32 (1088*668) + It is worth mentioning that the image payload is Y'CbCr rather than the + traditional YMC (or even BGR) of other dyseubs. Our best guess is that + we need to use the JPEG coefficients, although we realistically have + no way of confirming this. + + It is hoped that the printers do support YMC data, but as of yet we + have no way of determining if this is possible. + + Also, we have reports of the printer not quite behaving properly + in the face of multiple jobs; it's possible this thing may need a + backend after all, but more sniffs will need to be performed to determine + what the status readbacks (if any) mean. + */ diff --git a/src/cups/citizencw01_print.c b/src/cups/backend_citizencw01.c index 37313b5..618af86 100644 --- a/src/cups/citizencw01_print.c +++ b/src/cups/backend_citizencw01.c @@ -1,7 +1,7 @@ /* * Citizen CW-01 Photo Printer CUPS backend -- libusb-1.0 version * - * (c) 2014-2015 Solomon Peachy <pizza@shaftnet.org> + * (c) 2014-2016 Solomon Peachy <pizza@shaftnet.org> * * The latest version of this program can be found at: * @@ -826,9 +826,6 @@ static int cw01_cmdline_arg(void *vctx, int argc, char **argv) if (!ctx) return -1; - /* Reset arg parsing */ - optind = 1; - opterr = 0; while ((i = getopt(argc, argv, GETOPT_LIST_GLOBAL "inN:s")) >= 0) { switch(i) { GETOPT_PROCESS_GLOBAL diff --git a/src/cups/backend_common.c b/src/cups/backend_common.c index 4d682a8..171f564 100644 --- a/src/cups/backend_common.c +++ b/src/cups/backend_common.c @@ -1,7 +1,7 @@ /* * CUPS Backend common code * - * Copyright (c) 2007-2015 Solomon Peachy <pizza@shaftnet.org> + * Copyright (c) 2007-2016 Solomon Peachy <pizza@shaftnet.org> * * The latest version of this program can be found at: * @@ -27,7 +27,7 @@ #include "backend_common.h" -#define BACKEND_VERSION "0.63G" +#define BACKEND_VERSION "0.67G" #ifndef URI_PREFIX #error "Must Define URI_PREFIX" #endif @@ -74,7 +74,7 @@ static char *get_device_id(struct libusb_device_handle *dev) ERROR("Memory allocation failure (%d bytes)\n", ID_BUF_SIZE+1); return NULL; } - + if (libusb_kernel_driver_active(dev, iface)) libusb_detach_kernel_driver(dev, iface); @@ -100,10 +100,10 @@ static char *get_device_id(struct libusb_device_handle *dev) if (length > ID_BUF_SIZE || length < 14) length = (((unsigned)buf[1] & 255) << 8) | ((unsigned)buf[0] & 255); - + if (length > ID_BUF_SIZE) length = ID_BUF_SIZE; - + if (length < 14) { *buf = '\0'; goto done; @@ -212,7 +212,7 @@ int read_data(struct libusb_device_handle *dev, uint8_t endp, if (dyesub_debug) { DEBUG("Received %d bytes from printer\n", *readlen); } - + if ((dyesub_debug > 1 && buflen < 4096) || dyesub_debug > 2) { int i = *readlen; @@ -295,7 +295,7 @@ static char *sanitize_string(char *str) { return str; } -/* +/* These functions are Public Domain code obtained from: @@ -318,13 +318,13 @@ static char *url_encode(char *str) { ERROR("Memory allocation failure (%d bytes)\n", (int) strlen(str)*3 + 1); return NULL; } - + while (*pstr) { if (isalnum(*pstr) || *pstr == '-' || *pstr == '_' || *pstr == '.' || *pstr == '~') *pbuf++ = *pstr; - else if (*pstr == ' ') + else if (*pstr == ' ') *pbuf++ = '+'; - else + else *pbuf++ = '%', *pbuf++ = to_hex(*pstr >> 4), *pbuf++ = to_hex(*pstr & 15); pstr++; } @@ -345,7 +345,7 @@ static char *url_decode(char *str) { *pbuf++ = from_hex(pstr[1]) << 4 | from_hex(pstr[2]); pstr += 2; } - } else if (*pstr == '+') { + } else if (*pstr == '+') { *pbuf++ = ' '; } else { *pbuf++ = *pstr; @@ -439,7 +439,7 @@ static int print_scan_output(struct libusb_device *device, free(product2); return -1; } - + sprintf(descr, "%s %s", manuf3, product2); free(product2); free(manuf3); @@ -461,7 +461,7 @@ static int print_scan_output(struct libusb_device *device, } else if (backend->query_serno) { /* Get from backend hook */ int iface = 0; - struct libusb_config_descriptor *config; + struct libusb_config_descriptor *config = NULL; if (libusb_kernel_driver_active(dev, iface)) libusb_detach_kernel_driver(dev, iface); @@ -478,6 +478,8 @@ static int print_scan_output(struct libusb_device *device, else endp_down = config->interface[0].altsetting[0].endpoint[i].bEndpointAddress; } + if (endp_up && endp_down) + break; } buf[0] = 0; @@ -486,6 +488,9 @@ static int print_scan_output(struct libusb_device *device, libusb_release_interface(dev, iface); } serial = url_encode(buf); + + if (config) + libusb_free_config_descriptor(config); } if (!serial || !strlen(serial)) { /* Last-ditch */ @@ -499,7 +504,7 @@ static int print_scan_output(struct libusb_device *device, if (dyesub_debug) DEBUG("VID: %04X PID: %04X Manuf: '%s' Product: '%s' Serial: '%s'\n", desc->idVendor, desc->idProduct, manuf, product, serial); - + if (scan_only) { int k = 0; @@ -515,9 +520,8 @@ static int print_scan_output(struct libusb_device *device, prefix, buf, serial, backend->uri_prefix, descr, descr, ieee_id? ieee_id : ""); - } - + /* If a serial number was passed down, use it. */ if (match_serno && strcmp(match_serno, (char*)serial)) { found = -1; @@ -528,7 +532,7 @@ static int print_scan_output(struct libusb_device *device, if(manuf) free(manuf); if(product) free(product); if(descr) free(descr); - if(ieee_id) free(ieee_id); + if (ieee_id) free(ieee_id); libusb_close(dev); abort: @@ -631,7 +635,6 @@ static int find_and_enumerate(struct libusb_context *ctx, static struct dyesub_backend *find_backend(char *uri_prefix) { int i; - if (!uri_prefix) return NULL; @@ -649,7 +652,7 @@ static struct dyesub_backend *find_backend(char *uri_prefix) void print_license_blurb(void) { const char *license = "\n\ -Copyright 2007-2015 Solomon Peachy <pizza AT shaftnet DOT org>\n\ +Copyright 2007-2016 Solomon Peachy <pizza AT shaftnet DOT org>\n\ \n\ This program is free software; you can redistribute it and/or modify it\n\ under the terms of the GNU General Public License as published by the Free\n\ @@ -683,7 +686,7 @@ void print_help(char *argv0, struct dyesub_backend *backend) if (!backend) backend = find_backend(ptr); - + if (!backend) { int i; DEBUG("Environment variables:\n"); @@ -694,8 +697,6 @@ void print_help(char *argv0, struct dyesub_backend *backend) DEBUG("Standalone Usage:\n"); DEBUG("\t%s\n", URI_PREFIX); DEBUG(" [ -D ] [ -G ] [ -f ]\n"); - DEBUG(" [ -S serialnum ] \n"); - DEBUG(" [ -V extra_vid ] [ -P extra_pid ] [ -T extra_type ] \n"); DEBUG(" [ backend_specific_args ] \n"); DEBUG(" [ -d copies ] \n"); DEBUG(" [ - | infile ] \n"); @@ -730,12 +731,12 @@ void print_help(char *argv0, struct dyesub_backend *backend) libusb_exit(ctx); } -int main (int argc, char **argv) +int main (int argc, char **argv) { struct libusb_context *ctx = NULL; struct libusb_device **list = NULL; struct libusb_device_handle *dev; - struct libusb_config_descriptor *config; + struct libusb_config_descriptor *config = NULL; struct dyesub_backend *backend = NULL; void * backend_ctx = NULL; @@ -758,7 +759,7 @@ int main (int argc, char **argv) DEBUG("Multi-Call Dye-sublimation CUPS Backend version %s\n", BACKEND_VERSION); - DEBUG("Copyright 2007-2015 Solomon Peachy\n"); + DEBUG("Copyright 2007-2016 Solomon Peachy\n"); DEBUG("This free software comes with ABSOLUTELY NO WARRANTY! \n"); DEBUG("Licensed under the GNU GPL. Run with '-G' for more details.\n"); DEBUG("\n"); @@ -831,7 +832,7 @@ int main (int argc, char **argv) /* Always enable fast return in CUPS mode */ fast_return++; } else { - /* Standalone mode */ + /* Standalone mode */ /* Try to guess backend from executable name */ if (!backend) { @@ -842,7 +843,7 @@ int main (int argc, char **argv) ptr = argv[0]; backend = find_backend(ptr); } - + srand(getpid()); jobid = rand(); } @@ -925,8 +926,13 @@ int main (int argc, char **argv) else endp_down = config->interface[0].altsetting[0].endpoint[i].bEndpointAddress; } + if (endp_up && endp_down) + break; } + if (config) + libusb_free_config_descriptor(config); + /* Initialize backend */ DEBUG("Initializing '%s' backend (version %s)\n", backend->name, backend->version); @@ -994,6 +1000,9 @@ newpage: if (ret) goto done_claimed; + /* Log the completed page */ + PAGE("%d %d\n", current_page, copies); + /* Since we have no way of telling if there's more data remaining to be read (without actually trying to read it), always assume multiple print jobs. */ @@ -1002,8 +1011,8 @@ newpage: done_multiple: close(data_fd); - /* Done printing */ - INFO("All printing done (%d pages * %d copies)\n", current_page, copies); + /* Done printing, log the total number of pages */ + PAGE("total %d\n", current_page * copies); ret = CUPS_BACKEND_OK; done_claimed: diff --git a/src/cups/backend_common.h b/src/cups/backend_common.h index a220f2c..d088aaa 100644 --- a/src/cups/backend_common.h +++ b/src/cups/backend_common.h @@ -1,7 +1,7 @@ /* * CUPS Backend common code * - * (c) 2013-2015 Solomon Peachy <pizza@shaftnet.org> + * (c) 2013-2016 Solomon Peachy <pizza@shaftnet.org> * * The latest version of this program can be found at: * @@ -99,23 +99,26 @@ enum { P_KODAK_6850, P_KODAK_1400_805, P_KODAK_605, + P_KODAK_305, P_SHINKO_S2145, P_SHINKO_S1245, P_SHINKO_S6245, - P_SHINKO_S6145, - P_SHINKO_S6145D, + P_SHINKO_S6145, + P_SHINKO_S6145D, P_SONY_UPDR150, P_SONY_UPCR10, P_MITSU_D70X, - P_MITSU_K60, + P_MITSU_D80, + P_MITSU_K60, P_MITSU_9550, - P_MITSU_9550S, + P_MITSU_9550S, P_DNP_DS40, P_DNP_DS80, P_DNP_DS80D, P_CITIZEN_CW01, P_DNP_DSRX1, P_DNP_DS620, + P_FUJI_ASK300, P_END, }; @@ -181,7 +184,7 @@ extern struct dyesub_backend BACKEND; #define CUPS_BACKEND_RETRY_CURRENT 7 /* Retry immediately */ /* Argument processing */ -#define GETOPT_LIST_GLOBAL "d:DfGhP:S:T:V:" +#define GETOPT_LIST_GLOBAL "d:DfGh" #define GETOPT_PROCESS_GLOBAL \ case 'd': \ copies = atoi(optarg); \ @@ -197,18 +200,6 @@ extern struct dyesub_backend BACKEND; exit(0); \ case 'h': \ print_help(argv[0], &BACKEND); \ - exit(0); \ - case 'P': \ - extra_pid = strtol(optarg, NULL, 16); \ - break; \ - case 'S': \ - use_serno = optarg; \ - break; \ - case 'T': \ - extra_type = atoi(optarg); \ - break; \ - case 'V': \ - extra_pid = strtol(optarg, NULL, 16); \ - break; + exit(0); #endif /* __BACKEND_COMMON_H */ diff --git a/src/cups/dnpds40_print.c b/src/cups/backend_dnpds40.c index fdec638..4a08d36 100644 --- a/src/cups/dnpds40_print.c +++ b/src/cups/backend_dnpds40.c @@ -1,12 +1,13 @@ /* * DNP DS40/DS80 Photo Printer CUPS backend -- libusb-1.0 version * - * (c) 2013-2015 Solomon Peachy <pizza@shaftnet.org> + * (c) 2013-2016 Solomon Peachy <pizza@shaftnet.org> * * Development of this backend was sponsored by: * * Marco Di Antonio and [ ilgruppodigitale.com ] * LiveLink Technology [ www.livelinktechnology.net ] + * A generous benefactor who wishes to remain anonymous * * The latest version of this program can be found at: * @@ -30,9 +31,12 @@ * */ -//#define MATTE_STATE //#define DNP_ONLY -#define MATTE_GLOSSY_2BUF + +/* Enables caching of last print type to speed up + job pipelining. Without this we always have to + assume the worst */ +//#define STATE_DIR "/tmp" #include <stdio.h> #include <stdlib.h> @@ -52,15 +56,13 @@ #define USB_PID_DNP_DS40 0x0003 // Also Citizen CX #define USB_PID_DNP_DS80 0x0004 // Also Citizen CX-W, and Mitsubishi CP-3800DW #define USB_PID_DNP_DSRX1 0x0005 // Also Citizen CY +#define USB_PID_CITIZEN_CW02 0x0006 +#define USB_PID_DNP_DS80D 0x0007 +#define USB_PID_DNP_DS620_OLD 0x0008 #define USB_VID_DNP 0x1452 #define USB_PID_DNP_DS620 0x8b01 -//#define USB_PID_DNP_DS80D XXXX - -//#define USB_PID_CITIZEN_CW-02 XXXXX -//#define USB_PID_CITIZEN_OP900II XXXXX - /* Private data stucture */ struct dnpds40_ctx { struct libusb_device_handle *dev; @@ -73,32 +75,42 @@ struct dnpds40_ctx { char *version; int buf_needed; - int last_matte; int ver_major; int ver_minor; - int media; + uint32_t media; + uint32_t duplex_media; + uint16_t media_count_new; uint32_t multicut; + + uint32_t last_multicut; + int last_matte; + + int fullcut; int matte; int cutter; int can_rewind; - + int mediaoffset; int manual_copies; + int correct_count; + int supports_6x9; int supports_2x6; int supports_3x5x2; int supports_matte; + int supports_luster; int supports_fullcut; int supports_rewind; int supports_standby; int supports_6x4_5; int supports_mqty_default; int supports_iserial; - - uint8_t *qty_offset; - uint8_t *buffctrl_offset; - uint8_t *multicut_offset; + int supports_6x6; + int supports_5x5; + int supports_counterp; + int supports_adv_fullcut; + int supports_mediaoffset; uint8_t *databuf; int datalen; @@ -116,6 +128,50 @@ struct dnpds40_cmd { /* All unused elements are set to 0x20 (ie ascii space) */ }; +#define MULTICUT_5x3_5 1 +#define MULTICUT_6x4 2 +#define MULTICUT_5x7 3 +#define MULTICUT_6x8 4 +#define MULTICUT_6x9 5 +#define MULTICUT_8x10 6 +#define MULTICUT_8x12 7 +#define MULTICUT_8x4 8 +#define MULTICUT_8x5 9 +#define MULTICUT_8x6 10 +#define MULTICUT_8x8 11 +#define MULTICUT_6x4X2 12 +#define MULTICUT_8x4X2 13 +#define MULTICUT_8x5X2 14 +#define MULTICUT_8x6X2 15 +#define MULTICUT_8x5_8x4 16 +#define MULTICUT_8x6_8x4 17 +#define MULTICUT_8x6_8x5 18 +#define MULTICUT_8x8_8x4 19 +#define MULTICUT_8x4X3 20 +#define MULTICUT_8xA4LEN 21 +#define MULTICUT_5x3_5X2 22 +#define MULTICUT_6x6 27 +#define MULTICUT_5x5 29 +#define MULTICUT_6x4_5 30 +#define MULTICUT_6x4_5X2 31 + +#define MULTICUT_S_SIMPLEX 100 +#define MULTICUT_S_FRONT 200 +#define MULTICUT_S_BACK 300 + +#define MULTICUT_S_8x10 6 +#define MULTICUT_S_8x12 7 +#define MULTICUT_S_8x4 8 +#define MULTICUT_S_8x5 9 +#define MULTICUT_S_8x6 10 +#define MULTICUT_S_8x8 11 +#define MULTICUT_S_8x4X2 13 +#define MULTICUT_S_8x5X2 14 +#define MULTICUT_S_8x6X2 15 +#define MULTICUT_S_8x10_5 25 +#define MULTICUT_S_8x10_75 26 +#define MULTICUT_S_8x4X3 28 // different than roll type. + #define min(__x, __y) ((__x) < (__y)) ? __x : __y static void dnpds40_build_cmd(struct dnpds40_cmd *cmd, char *arg1, char *arg2, uint32_t arg3_len) @@ -150,9 +206,24 @@ static void dnpds40_cleanup_string(char *start, int len) } } +static char *dnpds40_printer_type(int type) +{ + switch(type) { + case P_DNP_DS40: return "DS40"; + case P_DNP_DS80: return "DS80"; + case P_DNP_DS80D: return "DS80DX"; + case P_DNP_DSRX1: return "DSRX1"; + case P_DNP_DS620: return "DS620"; + default: break; + } + return "Unknown"; +} + static char *dnpds40_media_types(int media) { switch (media) { + case 100: return "UNKNOWN100"; // seen in driver dumps + case 110: return "UNKNOWN110"; // seen in driver dumps case 200: return "5x3.5 (L)"; case 210: return "5x7 (2L)"; case 300: return "6x4 (PC)"; @@ -167,8 +238,95 @@ static char *dnpds40_media_types(int media) return "Unknown type"; } +static char *dnpds80_duplex_media_types(int media) +{ + switch (media) { + case 100: return "8x10.75"; + case 200: return "8x12"; + default: + break; + } + + return "Unknown type"; +} + +static char *dnpds80_duplex_statuses(int status) +{ + switch (status) { + case 5000: return "No Error"; + + case 5500: return "Duplex Unit Not Connected"; + + case 5017: return "Paper Jam: Supply Sensor On"; + case 5018: return "Paper Jam: Supply Sensor Off"; + case 5019: return "Paper Jam: Slot Sensor On"; + case 5020: return "Paper Jam: Slot Sensor Off"; + case 5021: return "Paper Jam: Pass Sensor On"; + case 5022: return "Paper Jam: Pass Sensor Off"; + case 5023: return "Paper Jam: Shell Sensor 1 On"; + case 5024: return "Paper Jam: Shell Sensor 1 Off"; + case 5025: return "Paper Jam: Shell Sensor 2 On"; + case 5026: return "Paper Jam: Shell Sensor 2 Off"; + case 5027: return "Paper Jam: Eject Sensor On"; + case 5028: return "Paper Jam: Eject Sensor Off"; + case 5029: return "Paper Jam: Slot FG Sensor"; + case 5030: return "Paper Jam: Shell FG Sensor"; + + case 5033: return "Paper Supply Sensor Off"; + case 5034: return "Printer Feed Slot Sensor Off"; + case 5035: return "Pinch Pass Sensor Off"; + case 5036: return "Shell Pass Sensor 1 Off"; + case 5037: return "Shell Pass Sensor 2 Off"; + case 5038: return "Eject Sensor Off"; + + case 5049: return "Capstan Drive Control Error"; + case 5065: return "Shell Roller Error"; + + case 5081: return "Pinch Open Error"; + case 5082: return "Pinch Close Error"; + case 5083: return "Pinch Init Error"; + case 5084: return "Pinch Position Error"; + + case 5097: return "Pass Guide Supply Error"; + case 5098: return "Pass Guide Shell Error"; + case 5099: return "Pass Guide Eject Error"; + case 5100: return "Pass Guide Init Error"; + case 5101: return "Pass Guide Position Error"; + + case 5113: return "Side Guide Home Error"; + case 5114: return "Side Guide Position Error"; + case 5115: return "Side Guide Init Error"; + + case 5129: return "Act Guide Home Error"; + + case 5145: return "Shell Rotate Home Error"; + case 5146: return "Shell Rotate Rev Error"; + + case 5161: return "Paper Feed Lever Down Error"; + case 5162: return "Paper Feed Lever Lock Error"; + case 5163: return "Paper Feed Lever Up Error"; + + case 5177: return "Cutter Home Error"; + case 5178: return "Cutter Away Error"; + case 5179: return "Cutter Init Error"; + case 5180: return "Cutter Position Error"; + + case 5193: return "Paper Tray Removed"; + case 5209: return "Cover Opened"; + case 5241: return "System Error"; + + default: + break; + } + + return "Unkown Duplexer Error"; +} + static char *dnpds40_statuses(int status) { + if (status >= 5000 && status <= 5999) + return dnpds80_duplex_statuses(status); + switch (status) { case 0: return "Idle"; case 1: return "Printing"; @@ -308,7 +466,6 @@ static void *dnpds40_init(void) memset(ctx, 0, sizeof(struct dnpds40_ctx)); ctx->type = P_ANY; - ctx->last_matte = -1; return ctx; } @@ -391,6 +548,33 @@ static void dnpds40_attach(void *vctx, struct libusb_device_handle *dev, } } + if (ctx->type == P_DNP_DS80D) { + struct dnpds40_cmd cmd; + uint8_t *resp; + int len = 0; + + /* Query Duplex Media Info */ + dnpds40_build_cmd(&cmd, "INFO", "CUT_PAPER", 0); + + resp = dnpds40_resp_cmd(ctx, &cmd, &len); + if (resp) { + char tmp[5]; + + dnpds40_cleanup_string((char*)resp, len); + + memcpy(tmp, resp + 4, 4); + tmp[4] = 0; + + ctx->duplex_media = atoi(tmp); + + /* Subtract out the paper status */ + if (ctx->duplex_media & 3) + ctx->duplex_media -= (ctx->duplex_media & 3); + + free(resp); + } + } + #ifdef DNP_ONLY /* Only allow DNP printers to work. Rebadged versions should not. */ @@ -408,42 +592,161 @@ static void dnpds40_attach(void *vctx, struct libusb_device_handle *dev, switch (ctx->type) { case P_DNP_DS40: ctx->supports_6x9 = 1; + if (FW_VER_CHECK(1,04)) + ctx->supports_counterp = 1; if (FW_VER_CHECK(1,30)) ctx->supports_matte = 1; if (FW_VER_CHECK(1,40)) ctx->supports_2x6 = 1; - if (FW_VER_CHECK(1,50)) - ctx->supports_3x5x2 = 1; - if (FW_VER_CHECK(1,51)) - ctx->supports_fullcut = 1; break; case P_DNP_DS80: + case P_DNP_DS80D: + if (FW_VER_CHECK(1,02)) + ctx->supports_counterp = 1; if (FW_VER_CHECK(1,30)) ctx->supports_matte = 1; break; case P_DNP_DSRX1: + ctx->supports_counterp = 1; ctx->supports_matte = 1; - ctx->supports_mqty_default = 1; // 1.10 does. Maybe older too? if (FW_VER_CHECK(1,10)) - ctx->supports_2x6 = 1; + ctx->supports_2x6 = ctx->supports_mqty_default = 1; + if (FW_VER_CHECK(1,20)) + ctx->supports_3x5x2 = 1; + if (FW_VER_CHECK(2,00)) { /* AKA RX1HS */ + ctx->supports_mediaoffset = 1; + ctx->supports_iserial = 1; + } break; case P_DNP_DS620: + ctx->correct_count = 1; + ctx->supports_counterp = 1; ctx->supports_matte = 1; ctx->supports_2x6 = 1; ctx->supports_fullcut = 1; ctx->supports_mqty_default = 1; - ctx->supports_rewind = 1; + if (strchr(ctx->version, 'A')) + ctx->supports_rewind = 0; + else + ctx->supports_rewind = 1; ctx->supports_standby = 1; ctx->supports_iserial = 1; + ctx->supports_6x6 = 1; + ctx->supports_5x5 = 1; if (FW_VER_CHECK(0,30)) ctx->supports_3x5x2 = 1; if (FW_VER_CHECK(1,10)) ctx->supports_6x9 = ctx->supports_6x4_5 = 1; + if (FW_VER_CHECK(1,20)) + ctx->supports_adv_fullcut = 1; + if (FW_VER_CHECK(1,30)) + ctx->supports_luster = 1; break; default: ERROR("Unknown vid/pid %04x/%04x (%d)\n", desc.idVendor, desc.idProduct, ctx->type); return; } + + ctx->last_matte = -1; +#ifdef STATE_DIR + /* Check our current job's lamination vs previous job. */ + { + /* Load last matte status from file */ + char buf[64]; + FILE *f; + snprintf(buf, sizeof(buf), STATE_DIR "/%s-last", ctx->serno); + f = fopen(buf, "r"); + if (f) { + fscanf(f, "%d", &ctx->last_matte); + fclose(f); + } + } +#endif + + if (ctx->supports_mediaoffset) { + /* Get Media Offset */ + struct dnpds40_cmd cmd; + uint8_t *resp; + int len = 0; + + dnpds40_build_cmd(&cmd, "INFO", "MEDIA_OFFSET", 0); + resp = dnpds40_resp_cmd(ctx, &cmd, &len); + if (resp) { + ctx->mediaoffset = atoi((char*)resp+4); + free(resp); + } + } else if (!ctx->correct_count) { + ctx->mediaoffset = 50; + } + + if (ctx->supports_mqty_default) { + struct dnpds40_cmd cmd; + uint8_t *resp; + int len = 0; + + dnpds40_build_cmd(&cmd, "INFO", "MQTY_DEFAULT", 0); + + resp = dnpds40_resp_cmd(ctx, &cmd, &len); + if (resp) { + dnpds40_cleanup_string((char*)resp, len); + ctx->media_count_new = atoi((char*)resp+4); + free(resp); + ctx->media_count_new -= ctx->mediaoffset; + } + } else { + /* Look it up for legacy models & FW */ + switch (ctx->type) { + case P_DNP_DS40: + switch (ctx->media) { + case 200: // L + ctx->media_count_new = 460; + break; + case 210: // 2L + ctx->media_count_new = 230; + break; + case 300: // PC + ctx->media_count_new = 400; + break; + case 310: // A5 + ctx->media_count_new = 200; + break; + case 400: // A5W + ctx->media_count_new = 180; + break; + default: + ctx->media_count_new = 999; // non-zero + } + break; + case P_DNP_DSRX1: + switch (ctx->media) { + case 300: // PC + ctx->media_count_new = 700; + break; + case 310: // A5 + ctx->media_count_new = 350; + break; + default: + ctx->media_count_new = 999; // non-zero + } + break; + case P_DNP_DS80: + case P_DNP_DS80D: + switch (ctx->media) { + case 500: // 8x10 + ctx->media_count_new = 130; + break; + case 510: // 8x12 + ctx->media_count_new = 110; + break; + default: + ctx->media_count_new = 999; // non-zero + } + break; + default: + ctx->media_count_new = 999; // non-zero + break; + } + } } static void dnpds40_teardown(void *vctx) { @@ -452,6 +755,19 @@ static void dnpds40_teardown(void *vctx) { if (!ctx) return; + if (ctx->type == P_DNP_DS80D) { + struct dnpds40_cmd cmd; + + /* Check to see if last print was the front side + of a duplex job, and if so, cancel things so we're done */ + if (ctx->last_multicut >= 200 && + ctx->last_multicut < 300) { + dnpds40_build_cmd(&cmd, "CNTRL", "DUPLEX_CANCEL", 0); + if ((dnpds40_do_cmd(ctx, &cmd, NULL, 0)) != 0) + return; + } + } + if (ctx->databuf) free(ctx->databuf); if (ctx->serno) @@ -468,7 +784,7 @@ static int dnpds40_read_parse(void *vctx, int data_fd) { int run = 1; char buf[9] = { 0 }; - uint32_t matte, dpi, cutter; + uint32_t dpi; if (!ctx) return CUPS_BACKEND_FAILED; @@ -495,12 +811,13 @@ static int dnpds40_read_parse(void *vctx, int data_fd) { } /* Clear everything out */ - matte = 0; dpi = 0; - cutter = 0; + ctx->matte = 0; + ctx->cutter = 0; ctx->manual_copies = 0; ctx->multicut = 0; - ctx->buffctrl_offset = ctx->qty_offset = ctx->multicut_offset = 0; + ctx->fullcut = 0; + ctx->can_rewind = 0; while (run) { int remain, i, j; @@ -542,43 +859,47 @@ static int dnpds40_read_parse(void *vctx, int data_fd) { /* Check for some offsets */ if(!memcmp("CNTRL QTY", ctx->databuf + ctx->datalen+2, 9)) { - ctx->qty_offset = ctx->databuf + ctx->datalen + 32; + /* Ignore this. We will insert our own later on */ + continue; } if(!memcmp("CNTRL CUTTER", ctx->databuf + ctx->datalen+2, 12)) { memcpy(buf, ctx->databuf + ctx->datalen + 32, 8); - cutter = atoi(buf); + ctx->cutter = atoi(buf); + /* We'll insert it ourselves later */ + continue; } if(!memcmp("CNTRL BUFFCNTRL", ctx->databuf + ctx->datalen+2, 15)) { - /* If the printer doesn't support matte, it doesn't - support buffcntrl. strip it from the stream */ - if (ctx->supports_matte) { - ctx->buffctrl_offset = ctx->databuf + ctx->datalen + 32; - } else { - WARNING("Printer FW does not support BUFFCNTRL, please update\n"); - continue; - } + /* Ignore this. We will insert our own later on + if the printer and job support it. */ + continue; } if(!memcmp("CNTRL OVERCOAT", ctx->databuf + ctx->datalen+2, 14)) { - /* If the printer doesn't support matte, it doesn't - support buffcntrl. strip it from the stream */ if (ctx->supports_matte) { memcpy(buf, ctx->databuf + ctx->datalen + 32, 8); - matte = atoi(buf); + ctx->matte = atoi(buf); } else { - WARNING("Printer FW does not support matte prints, please update\n"); - continue; + WARNING("Printer FW does not support matte prints, using glossy mode\n"); } + /* We'll insert our own later, if appropriate */ + continue; } if(!memcmp("IMAGE MULTICUT", ctx->databuf + ctx->datalen+2, 14)) { - ctx->multicut_offset = ctx->databuf + ctx->datalen + 32; memcpy(buf, ctx->databuf + ctx->datalen + 32, 8); ctx->multicut = atoi(buf); + /* Backend automatically handles rewind support, so + ignore application requests to use it. */ + if (ctx->multicut > 400) + ctx->multicut -= 400; + + /* We'll insert this ourselves later. */ + continue; } if(!memcmp("CNTRL FULL_CUTTER_SET", ctx->databuf + ctx->datalen+2, 21)) { if (!ctx->supports_fullcut) { - WARNING("Printer FW does not support cutter control, please update!\n"); + WARNING("Printer FW does not support full cutter control!\n"); continue; } + ctx->fullcut = 1; } if(!memcmp("IMAGE YPLANE", ctx->databuf + ctx->datalen + 2, 12)) { uint32_t y_ppm; /* Pixels Per Meter */ @@ -595,21 +916,22 @@ static int dnpds40_read_parse(void *vctx, int data_fd) { dpi = 600; break; default: - ERROR("Unrecognized printjob resolution (%d ppm)\n", y_ppm); + ERROR("Unrecognized printjob resolution (%u ppm)\n", y_ppm); return CUPS_BACKEND_CANCEL; } /* Validate horizontal size */ memcpy(&y_ppm, ctx->databuf + ctx->datalen + 32 + 18, sizeof(y_ppm)); y_ppm = le32_to_cpu(y_ppm); - if (ctx->type == P_DNP_DS80) { + if (ctx->type == P_DNP_DS80 || + ctx->type == P_DNP_DS80D) { if (y_ppm != 2560) { - ERROR("Incorrect horizontal resolution (%d), aborting!\n", y_ppm); + ERROR("Incorrect horizontal resolution (%u), aborting!\n", y_ppm); return CUPS_BACKEND_CANCEL; } } else { if (y_ppm != 1920) { - ERROR("Incorrect horizontal resolution (%d), aborting!\n", y_ppm); + ERROR("Incorrect horizontal resolution (%u), aborting!\n", y_ppm); return CUPS_BACKEND_CANCEL; } } @@ -623,160 +945,230 @@ static int dnpds40_read_parse(void *vctx, int data_fd) { ctx->datalen += sizeof(struct dnpds40_cmd) + j; } + /* If we have no data.. don't bother */ if (!ctx->datalen) return CUPS_BACKEND_CANCEL; - /* Figure out the number of buffers we need. Most only need one. */ - if (ctx->multicut) { - ctx->buf_needed = 1; - - if (dpi == 600) { - if (ctx->type == P_DNP_DS620) { - if (ctx->multicut == 5 || // 6x9 - ctx->multicut == 31) // 6x4.5*2 - ctx->buf_needed = 2; - } else if (ctx->type == P_DNP_DS80) { /* DS80/CX-W */ - if (matte && (ctx->multicut == 21 || // A4 length - ctx->multicut == 20 || // 8x4*3 - ctx->multicut == 19 || // 8x8+8x4 - ctx->multicut == 15 || // 8x6*2 - ctx->multicut == 7)) // 8x12 - ctx->buf_needed = 2; - } else { /* DS40/CX/RX1/CY/etc */ - if (ctx->multicut == 4 || // 6x8 - ctx->multicut == 5 || // 6x9 - ctx->multicut == 12) // 6x4*2 - ctx->buf_needed = 2; - else if (matte && ctx->multicut == 3) // 5x7 - ctx->buf_needed = 2; - } - } - } else { - WARNING("Missing or illegal MULTICUT command, can't validate print job against loaded media!\n"); + /* Sanity check matte mode */ + if (ctx->matte == 22 && !ctx->supports_luster) { + WARNING("Printer FW does not support Luster mode, downgrading to normal matte\n"); + ctx->matte -= 21; + } else if (ctx->matte > 1) { + WARNING("Unknown matte mode selected, downgrading to normal matte\n"); + ctx->matte -= 21; + } + + /* Make sure MULTICUT is sane, most validation needs this */ + if (!ctx->multicut) { + WARNING("Missing or illegal MULTICUT command!\n"); if (dpi == 300) ctx->buf_needed = 1; else ctx->buf_needed = 2; + + goto skip_checks; } - ctx->matte = (int)matte; - ctx->cutter = cutter; - ctx->can_rewind = 0; + /* Only DS80D supports Cut Paper types */ + if (ctx->multicut > 100 && + ctx->type != P_DNP_DS80D) { + ERROR("Only DS80D supports cut-paper sizes!\n"); + return CUPS_BACKEND_CANCEL; + } - DEBUG("dpi %u matte %u mcut %u cutter %d, bufs %d\n", - dpi, matte, ctx->multicut, cutter, ctx->buf_needed); + /* Figure out the number of buffers we need. */ + ctx->buf_needed = 1; + if (dpi == 600) { + if (ctx->type == P_DNP_DS620) { + if (ctx->multicut == MULTICUT_6x9 || + ctx->multicut == MULTICUT_6x4_5X2) + ctx->buf_needed = 2; + } else if (ctx->type == P_DNP_DS80) { /* DS80/CX-W */ + if (ctx->matte && (ctx->multicut == MULTICUT_8xA4LEN || + ctx->multicut == MULTICUT_8x4X3 || + ctx->multicut == MULTICUT_8x8_8x4 || + ctx->multicut == MULTICUT_8x6X2 || + ctx->multicut == MULTICUT_8x12)) + ctx->buf_needed = 2; + } else if (ctx->type == P_DNP_DS80D) { /* DS80D */ + if (ctx->matte) { + int mcut = ctx->multicut; + + if (mcut > MULTICUT_S_BACK) + mcut -= MULTICUT_S_BACK; + else if (mcut > MULTICUT_S_FRONT) + mcut -= MULTICUT_S_FRONT; + + if (mcut == MULTICUT_8xA4LEN || + mcut == MULTICUT_8x4X3 || + mcut == MULTICUT_8x8_8x4 || + mcut == MULTICUT_8x6X2 || + mcut == MULTICUT_8x12) + ctx->buf_needed = 2; - /* Sanity-check printjob type vs loaded media */ - if (ctx->multicut) { + if (mcut == MULTICUT_S_8x12 || + mcut == MULTICUT_S_8x6X2 || + mcut == MULTICUT_S_8x4X3) + ctx->buf_needed = 2; + } + } else { /* DS40/CX/RX1/CY/etc */ + if (ctx->multicut == MULTICUT_6x8 || + ctx->multicut == MULTICUT_6x9 || + ctx->multicut == MULTICUT_6x4X2 || + ctx->multicut == MULTICUT_5x7 || + ctx->multicut == MULTICUT_5x3_5X2) + ctx->buf_needed = 2; + } + } + + /* Sanity-check type vs loaded media */ + if (ctx->multicut < 100) { switch(ctx->media) { case 200: //"5x3.5 (L)" - if (ctx->multicut != 1) { - ERROR("Incorrect media for job loaded (%d vs %d)\n", ctx->media, ctx->multicut); + if (ctx->multicut != MULTICUT_5x3_5) { + ERROR("Incorrect media for job loaded (%u vs %u)\n", ctx->media, ctx->multicut); return CUPS_BACKEND_CANCEL; } break; case 210: //"5x7 (2L)" - if (ctx->multicut != 1 && ctx->multicut != 3 && - ctx->multicut != 22 && ctx->multicut != 29) { - ERROR("Incorrect media for job loaded (%d vs %d)\n", ctx->media, ctx->multicut); + if (ctx->multicut != MULTICUT_5x3_5 && ctx->multicut != MULTICUT_5x7 && + ctx->multicut != MULTICUT_5x3_5X2 && ctx->multicut != MULTICUT_5x5) { + ERROR("Incorrect media for job loaded (%u vs %u)\n", ctx->media, ctx->multicut); return CUPS_BACKEND_CANCEL; } /* Only 3.5x5 on 7x5 media can be rewound */ - if (ctx->multicut == 1) + if (ctx->multicut == MULTICUT_5x3_5) ctx->can_rewind = 1; break; case 300: //"6x4 (PC)" - if (ctx->multicut != 2) { - ERROR("Incorrect media for job loaded (%d vs %d)\n", ctx->media, ctx->multicut); + if (ctx->multicut != MULTICUT_6x4) { + ERROR("Incorrect media for job loaded (%u vs %u)\n", ctx->media, ctx->multicut); return CUPS_BACKEND_CANCEL; } break; case 310: //"6x8 (A5)" - if (ctx->multicut != 2 && ctx->multicut != 4 && - ctx->multicut != 12 && - ctx->multicut != 27 && ctx->multicut != 30) { - ERROR("Incorrect media for job loaded (%d vs %d)\n", ctx->media, ctx->multicut); + if (ctx->multicut != MULTICUT_6x4 && ctx->multicut != MULTICUT_6x8 && + ctx->multicut != MULTICUT_6x4X2 && + ctx->multicut != MULTICUT_6x6 && ctx->multicut != 30) { + ERROR("Incorrect media for job loaded (%u vs %u)\n", ctx->media, ctx->multicut); return CUPS_BACKEND_CANCEL; } /* Only 6x4 on 6x8 media can be rewound */ - if (ctx->multicut == 2) + if (ctx->multicut == MULTICUT_6x4) ctx->can_rewind = 1; break; case 400: //"6x9 (A5W)" - if (ctx->multicut != 2 && ctx->multicut != 4 && - ctx->multicut != 5 && ctx->multicut != 12 && - ctx->multicut != 27 && - ctx->multicut != 30 && ctx->multicut != 31) { - ERROR("Incorrect media for job loaded (%d vs %d)\n", ctx->media, ctx->multicut); + if (ctx->multicut != MULTICUT_6x4 && ctx->multicut != MULTICUT_6x8 && + ctx->multicut != MULTICUT_6x9 && ctx->multicut != MULTICUT_6x4X2 && + ctx->multicut != MULTICUT_6x6 && + ctx->multicut != MULTICUT_6x4_5 && ctx->multicut != MULTICUT_6x4_5X2) { + ERROR("Incorrect media for job loaded (%u vs %u)\n", ctx->media, ctx->multicut); return CUPS_BACKEND_CANCEL; } /* Only 6x4 or 6x4.5 on 6x9 media can be rewound */ - if (ctx->multicut == 2 || ctx->multicut == 30) + if (ctx->multicut == MULTICUT_6x4 || ctx->multicut == MULTICUT_6x4_5) ctx->can_rewind = 1; break; case 500: //"8x10" - if (ctx->multicut < 6 || ctx->multicut == 7 || - ctx->multicut == 15 || ctx->multicut >= 18 ) { - ERROR("Incorrect media for job loaded (%d vs %d)\n", ctx->media, ctx->multicut); + if (ctx->multicut < MULTICUT_8x10 || ctx->multicut == MULTICUT_8x12 || + ctx->multicut == MULTICUT_8x6X2 || ctx->multicut >= MULTICUT_8x6_8x5 ) { + ERROR("Incorrect media for job loaded (%u vs %u)\n", ctx->media, ctx->multicut); return CUPS_BACKEND_CANCEL; } break; case 510: //"8x12" - if (ctx->multicut < 6 || ctx->multicut > 21) { - ERROR("Incorrect media for job loaded (%d vs %d)\n", ctx->media, ctx->multicut); + if (ctx->multicut < MULTICUT_8x10 || ctx->multicut > MULTICUT_8xA4LEN) { + ERROR("Incorrect media for job loaded (%u vs %u)\n", ctx->media, ctx->multicut); + return CUPS_BACKEND_CANCEL; + } + break; + default: + ERROR("Unknown media (%u vs %u)!\n", ctx->media, ctx->multicut); + return CUPS_BACKEND_CANCEL; + } + } else if (ctx->multicut < 400) { + int mcut = ctx->multicut; + + switch(ctx->duplex_media) { + case 100: //"8x10.75" + if (mcut > MULTICUT_S_BACK) + mcut -= MULTICUT_S_BACK; + else if (mcut > MULTICUT_S_FRONT) + mcut -= MULTICUT_S_FRONT; + + if (mcut == MULTICUT_S_8x12 || + mcut == MULTICUT_S_8x6X2 || + mcut == MULTICUT_S_8x4X3) { + ERROR("Incorrect media for job loaded (%u vs %u)\n", ctx->media, ctx->multicut); return CUPS_BACKEND_CANCEL; } break; + case 200: //"8x12" + /* Everything is legal */ + break; default: - ERROR("Unknown media (%d vs %d)!\n", ctx->media, ctx->multicut); + ERROR("Unknown duplexer media (%u vs %u)!\n", ctx->duplex_media, ctx->multicut); return CUPS_BACKEND_CANCEL; } + } else { + ERROR("Multicut value out of range! (%u)\n", ctx->multicut); + return CUPS_BACKEND_CANCEL; + } + + /* Additional santity checks, make sure printer support exists */ + if (!ctx->supports_6x6 && ctx->multicut == MULTICUT_6x6) { + ERROR("Printer does not support 6x6 prints, aborting!\n"); + return CUPS_BACKEND_CANCEL; } - /* Additional santity checks */ - if ((ctx->multicut == 27 || ctx->multicut == 29) && - ctx->type != P_DNP_DS620) { - ERROR("Printer does not support 6x6 or 5x5 prints, aborting!\n"); + if (!ctx->supports_5x5 && ctx->multicut == MULTICUT_5x5) { + ERROR("Printer does not support 5x5 prints, aborting!\n"); return CUPS_BACKEND_CANCEL; } - if ((ctx->multicut == 30 || ctx->multicut == 31) && + if ((ctx->multicut == MULTICUT_6x4_5 || ctx->multicut == MULTICUT_6x4_5X2) && !ctx->supports_6x4_5) { ERROR("Printer does not support 6x4.5 prints, aborting!\n"); return CUPS_BACKEND_CANCEL; } - if (ctx->multicut == 5 && !ctx->supports_6x9) { + if (ctx->multicut == MULTICUT_6x9 && !ctx->supports_6x9) { ERROR("Printer does not support 6x9 prints, aborting!\n"); return CUPS_BACKEND_CANCEL; } - if (ctx->multicut == 22 && !ctx->supports_3x5x2) { + if (ctx->multicut == MULTICUT_5x3_5X2 && !ctx->supports_3x5x2) { ERROR("Printer does not support 3.5x5*2 prints, aborting!\n"); return CUPS_BACKEND_CANCEL; } + if (ctx->fullcut && !ctx->supports_adv_fullcut && + ctx->multicut != MULTICUT_6x8) { + ERROR("Printer does not support full control on sizes other than 6x8, aborting!\n"); + return CUPS_BACKEND_CANCEL; + } + if (ctx->cutter == 120) { - if (ctx->multicut == 2 || ctx->multicut == 4) { + if (ctx->multicut == MULTICUT_6x4 || ctx->multicut == MULTICUT_6x8) { if (!ctx->supports_2x6) { ERROR("Printer does not support 2x6 prints, aborting!\n"); return CUPS_BACKEND_CANCEL; } } else { - ERROR("Printer only supports 2-inch cuts on 4x6 or 8x6 jobs!"); + ERROR("Printer only supports legacy 2-inch cuts on 4x6 or 8x6 jobs!"); return CUPS_BACKEND_CANCEL; } /* Work around firmware bug on DS40 where if we run out of media, we can't resume the job without losing the - cutter setting. XXX add version test? */ + cutter setting. */ + // XXX add version test? what about other printers? ctx->manual_copies = 1; } - if (ctx->matte && !ctx->supports_matte) { - ERROR("Printer FW does not support matte operation, please update!\n"); - return CUPS_BACKEND_CANCEL; - } +skip_checks: + DEBUG("dpi %u matte %d mcut %u cutter %d, bufs %d\n", + dpi, ctx->matte, ctx->multicut, ctx->cutter, ctx->buf_needed); return CUPS_BACKEND_OK; } @@ -785,91 +1177,40 @@ static int dnpds40_main_loop(void *vctx, int copies) { struct dnpds40_ctx *ctx = vctx; int ret; struct dnpds40_cmd cmd; - uint8_t *resp = NULL; + uint8_t *resp; int len = 0; uint8_t *ptr; char buf[9]; int status; int buf_needed; + int count = 0; if (!ctx) return CUPS_BACKEND_FAILED; - /* Update quantity offset with count */ - // XXX this breaks if ctx->manual_copies is set, but the job - // has a CNTRL QTY != 1 - if (!ctx->manual_copies && copies > 1) { - snprintf(buf, sizeof(buf), "%07d\r", copies); - if (ctx->qty_offset) { - memcpy(ctx->qty_offset, buf, 8); - } else { - dnpds40_build_cmd(&cmd, "CNTRL", "QTY", 8); - if ((ret = dnpds40_do_cmd(ctx, &cmd, (uint8_t*)buf, 8))) - return CUPS_BACKEND_FAILED; - } - - copies = 1; - } - - /* Enable job resumption on correctable errors */ - if (ctx->supports_matte) { - snprintf(buf, sizeof(buf), "%08d", 1); - if (ctx->buffctrl_offset) { - memcpy(ctx->buffctrl_offset, buf, 8); - } else { - dnpds40_build_cmd(&cmd, "CNTRL", "BUFFCNTRL", 8); - if ((ret = dnpds40_do_cmd(ctx, &cmd, (uint8_t*)buf, 8))) - return CUPS_BACKEND_FAILED; - } - } - -#ifdef MATTE_STATE - /* Check our current job's lamination vs previous job. */ - { - /* Load last matte status from file */ - char buf[64]; - FILE *f; - snprintf(buf, sizeof(buf), "/tmp/%s-last", ctx->serno); - f = fopen(buf, "r"); - if (f) { - fscanf(f, "%d", &ctx->last_matte); - fclose(f); - } - } -#endif - buf_needed = ctx->buf_needed; -#ifdef MATTE_GLOSSY_2BUF - if (ctx->matte != ctx->last_matte) - buf_needed = 2; /* Switching needs both buffers */ -#endif + /* If we switch major overcoat modes, we need both buffers */ + if (!!ctx->matte != ctx->last_matte) + buf_needed = 2; - ctx->last_matte = ctx->matte; -#ifdef MATTE_STATE - { - /* Store last matte status into file */ - char buf[64]; - FILE *f; - snprintf(buf, sizeof(buf), "/tmp/%s-last", ctx->serno); - f = fopen(buf, "w"); - if (f) { - fprintf(f, "%08d", ctx->last_matte); - fclose(f); - } + if (ctx->media_count_new) { + ATTR("marker-colors=#00FFFF#FF00FF#FFFF00\n"); + ATTR("marker-high-levels=100\n"); + ATTR("marker-low-levels=10\n"); + ATTR("marker-names='%s'\n", dnpds40_media_types(ctx->media)); + ATTR("marker-types=ribbonWax\n"); } -#endif - top: /* Query status */ dnpds40_build_cmd(&cmd, "STATUS", "", 0); - if (resp) free(resp); resp = dnpds40_resp_cmd(ctx, &cmd, &len); if (!resp) return CUPS_BACKEND_FAILED; dnpds40_cleanup_string((char*)resp, len); status = atoi((char*)resp); + free(resp); /* Figure out what's going on */ switch(status) { @@ -878,7 +1219,6 @@ top: { int bufs; - if (resp) free(resp); /* Query buffer state */ dnpds40_build_cmd(&cmd, "INFO", "FREE_PBUFFER", 0); resp = dnpds40_resp_cmd(ctx, &cmd, &len); @@ -889,6 +1229,7 @@ top: dnpds40_cleanup_string((char*)resp, len); /* Check to see if we have sufficient buffers */ bufs = atoi(((char*)resp)+3); + free(resp); if (bufs < buf_needed) { INFO("Insufficient printer buffers (%d vs %d), retrying...\n", bufs, buf_needed); sleep(1); @@ -925,59 +1266,110 @@ top: return CUPS_BACKEND_HOLD; } - /* Verify we have sufficient media for prints */ { - int i = 0; + /* Figure out remaining native prints */ + dnpds40_build_cmd(&cmd, "INFO", "MQTY", 0); + + resp = dnpds40_resp_cmd(ctx, &cmd, &len); + if (!resp) + return CUPS_BACKEND_FAILED; + + dnpds40_cleanup_string((char*)resp, len); + + count = atoi((char*)resp+4); + free(resp); + + /* Old-sk00l models report one less than they should */ + if (!ctx->correct_count) + count++; + + count -= ctx->mediaoffset; + + if (ctx->media_count_new) { + ATTR("marker-levels=%d\n", count * 100 / ctx->media_count_new); + ATTR("marker-message=\"%d native prints remaining on '%s' ribbon\"\n", count, dnpds40_media_types(ctx->media)); + } /* See if we can rewind to save media */ if (ctx->can_rewind && ctx->supports_rewind) { - /* Tell the printer we want to rewind, if possible. */ - snprintf(buf, sizeof(buf), "%08d", ctx->multicut + 400); - memcpy(ctx->multicut_offset, buf, 8); + /* Tell printer to use rewind */ + ctx->multicut += 400; /* Get Media remaining */ dnpds40_build_cmd(&cmd, "INFO", "RQTY", 0); - if (resp) free(resp); resp = dnpds40_resp_cmd(ctx, &cmd, &len); if (!resp) return CUPS_BACKEND_FAILED; dnpds40_cleanup_string((char*)resp, len); - i = atoi((char*)resp+4); + count = atoi((char*)resp+4); + free(resp); } - /* If we didn't succeed with RQTY, try MQTY */ - if (i == 0) { - dnpds40_build_cmd(&cmd, "INFO", "MQTY", 0); + /* Verify we have sufficient media for prints */ - if (resp) free(resp); - resp = dnpds40_resp_cmd(ctx, &cmd, &len); - if (!resp) - return CUPS_BACKEND_FAILED; - - dnpds40_cleanup_string((char*)resp, len); - - i = atoi((char*)resp+4); - - /* For some reason all but the DS620 report 50 too high */ - if (ctx->type != P_DNP_DS620 && i > 0) - i -= 50; - } -#if 0 - if (i < 1) { +#if 0 // disabled this to allow error to be reported on the printer panel + if (count < 1) { ERROR("Printer out of media, please correct!\n"); return CUPS_BACKEND_STOP; } #endif - if (i < copies) { - WARNING("Printer does not have sufficient remaining media to complete job..\n"); + + if (count < copies) { + WARNING("Printer does not have sufficient remaining media (%d) to complete job (%d)\n", copies, count); } } - /* Send the stream over as individual data chunks */ - ptr = ctx->databuf; + /* Store our last multicut state */ + ctx->last_multicut = ctx->multicut; + + /* Tell printer how many copies to make */ + snprintf(buf, sizeof(buf), "%07d\r", ctx->manual_copies ? 1 : copies); + dnpds40_build_cmd(&cmd, "CNTRL", "QTY", 8); + if ((ret = dnpds40_do_cmd(ctx, &cmd, (uint8_t*)buf, 8))) + return CUPS_BACKEND_FAILED; + + if (!ctx->manual_copies) + copies = 1; + + /* Enable job resumption on correctable errors */ + if (ctx->supports_matte) { + snprintf(buf, sizeof(buf), "%08d", 1); + /* DS80D does not support BUFFCNTRL when using + cut media; all others support this */ + if (ctx->type != P_DNP_DS80D || + ctx->multicut < 100) { + dnpds40_build_cmd(&cmd, "CNTRL", "BUFFCNTRL", 8); + if ((ret = dnpds40_do_cmd(ctx, &cmd, (uint8_t*)buf, 8))) + return CUPS_BACKEND_FAILED; + } + } + + /* Set overcoat parameters */ + if (ctx->supports_matte) { + snprintf(buf, sizeof(buf), "%08d", ctx->matte); + dnpds40_build_cmd(&cmd, "CNTRL", "OVERCOAT", 8); + if ((ret = dnpds40_do_cmd(ctx, &cmd, (uint8_t*)buf, 8))) + return CUPS_BACKEND_FAILED; + } + + /* Program in the cutter setting */ + if (ctx->cutter) { + snprintf(buf, sizeof(buf), "%08d", ctx->cutter); + dnpds40_build_cmd(&cmd, "CNTRL", "CUTTER", 8); + if ((ret = dnpds40_do_cmd(ctx, &cmd, (uint8_t*)buf, 8))) + return CUPS_BACKEND_FAILED; + } + + /* Program in the multicut setting */ + snprintf(buf, sizeof(buf), "%08u", ctx->multicut); + dnpds40_build_cmd(&cmd, "IMAGE", "MULTICUT", 8); + if ((ret = dnpds40_do_cmd(ctx, &cmd, (uint8_t*)buf, 8))) + return CUPS_BACKEND_FAILED; + /* Finally, send the stream over as individual data chunks */ + ptr = ctx->databuf; while(ptr && ptr < (ctx->databuf + ctx->datalen)) { int i; buf[8] = 0; @@ -990,6 +1382,56 @@ top: ptr += i; } + sleep(1); /* Give things a moment */ + + if (fast_return) { + INFO("Fast return mode enabled.\n"); + } else { + INFO("Waiting for job to complete...\n"); + + while (1) { + /* Query status */ + dnpds40_build_cmd(&cmd, "STATUS", "", 0); + resp = dnpds40_resp_cmd(ctx, &cmd, &len); + if (!resp) + return CUPS_BACKEND_FAILED; + dnpds40_cleanup_string((char*)resp, len); + status = atoi((char*)resp); + free(resp); + + /* If we're idle or there's an error..*/ + if (status == 0) + break; + if (status >= 1000) { + ERROR("Printer encountered error: %s\n", dnpds40_statuses(status)); + break; + } + sleep(1); + } + + /* Figure out remaining native prints */ + dnpds40_build_cmd(&cmd, "INFO", "MQTY", 0); + + resp = dnpds40_resp_cmd(ctx, &cmd, &len); + if (!resp) + return CUPS_BACKEND_FAILED; + + dnpds40_cleanup_string((char*)resp, len); + + count = atoi((char*)resp+4); + free(resp); + + /* Old-sk00l models report one less than they should */ + if (!ctx->correct_count) + count++; + + count -= ctx->mediaoffset; + + if (ctx->media_count_new) { + ATTR("marker-levels=%d\n", count * 100 / ctx->media_count_new); + ATTR("marker-message=\"%d native prints remaining on '%s' ribbon\"\n", count, dnpds40_media_types(ctx->media)); + } + } /* Clean up */ if (terminate) @@ -998,13 +1440,27 @@ top: INFO("Print complete (%d copies remaining)\n", copies - 1); if (copies && --copies) { -#ifdef MATTE_GLOSSY_2BUF /* No need to wait on buffers due to matte switching */ buf_needed = ctx->buf_needed; -#endif goto top; } + /* Finally, account for overcoat mode of last print */ + ctx->last_matte = !!ctx->matte; +#ifdef STATE_DIR + { + /* Store last matte status into file */ + char buf[64]; + FILE *f; + snprintf(buf, sizeof(buf), STATE_DIR "/%s-last", ctx->serno); + f = fopen(buf, "w"); + if (f) { + fprintf(f, "%08d", ctx->last_matte); + fclose(f); + } + } +#endif + return CUPS_BACKEND_OK; } @@ -1081,11 +1537,28 @@ static int dnpds40_get_info(struct dnpds40_ctx *ctx) uint8_t *resp; int len = 0; + INFO("Model: %s\n", dnpds40_printer_type(ctx->type)); + /* Serial number already queried */ - INFO("Serial Number: '%s'\n", ctx->serno); + INFO("Serial Number: %s\n", ctx->serno); /* Firmware version already queried */ - INFO("Firmware Version: '%s'\n", ctx->version); + INFO("Firmware Version: %s\n", ctx->version); + + /* Figure out Duplexer */ + if (ctx->type == P_DNP_DS80D) { + dnpds40_build_cmd(&cmd, "INFO", "UNIT_FVER", 0); + + resp = dnpds40_resp_cmd(ctx, &cmd, &len); + if (!resp) + return CUPS_BACKEND_FAILED; + + dnpds40_cleanup_string((char*)resp, len); + + INFO("Duplexer Version: %s\n", resp); + + free(resp); + } /* Get Media Color offset */ dnpds40_build_cmd(&cmd, "INFO", "MCOLOR", 0); @@ -1096,7 +1569,7 @@ static int dnpds40_get_info(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - INFO("Media Color Offset: '%02x%02x%02x%02x'\n", *(resp+2), *(resp+3), + INFO("Media Color Offset: Y %u M %u C %u L %u\n", *(resp+2), *(resp+3), *(resp+4), *(resp+5)); free(resp); @@ -1110,7 +1583,7 @@ static int dnpds40_get_info(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - INFO("Media Class: '%s'\n", (char*)resp); + INFO("Media Class: %d\n", atoi((char*)resp + 4)); free(resp); @@ -1123,12 +1596,7 @@ static int dnpds40_get_info(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - INFO("Media Lot Code: '"); - /* 16-byte data in a 20-byte response */ - for (len = 0 ; len < 16 ; len++) { - DEBUG2("%c", *(resp+len+2)); - } - DEBUG2("'\n"); + INFO("Media Lot Code: %s\n", (char*)resp+2); free(resp); /* Get Media ID Set (?) */ @@ -1140,7 +1608,7 @@ static int dnpds40_get_info(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - INFO("Media ID(?): '%s'\n", (char*)resp+4); + INFO("Media ID: %d\n", atoi((char*)resp+4)); free(resp); @@ -1153,7 +1621,7 @@ static int dnpds40_get_info(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - INFO("Ribbon ID(?): '%s'\n", (char*)resp+4); + INFO("Ribbon ID: %s\n", (char*)resp); free(resp); @@ -1168,7 +1636,7 @@ static int dnpds40_get_info(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - INFO("300 DPI Color Data Version: '%s' ", (char*)resp); + INFO("300 DPI Color Data: %s ", (char*)resp); free(resp); @@ -1180,7 +1648,7 @@ static int dnpds40_get_info(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - DEBUG2("Checksum: '%s'\n", (char*)resp); + DEBUG2("(%s)\n", (char*)resp); free(resp); @@ -1193,7 +1661,7 @@ static int dnpds40_get_info(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - INFO("600 DPI Color Data Version: '%s' ", (char*)resp); + INFO("600 DPI Color Data: %s ", (char*)resp); free(resp); @@ -1205,7 +1673,7 @@ static int dnpds40_get_info(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - DEBUG2("Checksum: '%s'\n", (char*)resp); + DEBUG2("(%s)\n", (char*)resp); free(resp); @@ -1219,7 +1687,7 @@ static int dnpds40_get_info(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - INFO("Low Speed Color Data Version: '%s' ", (char*)resp); + INFO("Low Speed Color Data: %s ", (char*)resp); free(resp); @@ -1231,12 +1699,13 @@ static int dnpds40_get_info(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - DEBUG2("Checksum: '%s'\n", (char*)resp); + DEBUG2("(%s)\n", (char*)resp); free(resp); } - if (ctx->type == P_DNP_DS620) { + if (ctx->supports_standby) { + int i; /* Get Standby stuff */ dnpds40_build_cmd(&cmd, "MNT_RD", "STANDBY_TIME", 0); @@ -1245,8 +1714,9 @@ static int dnpds40_get_info(struct dnpds40_ctx *ctx) return CUPS_BACKEND_FAILED; dnpds40_cleanup_string((char*)resp, len); - - INFO("Standby Transition time: '%s' minutes\n", (char*)resp); + i = atoi((char*)resp); + + INFO("Standby Transition time: %d minutes\n", i); free(resp); @@ -1258,13 +1728,15 @@ static int dnpds40_get_info(struct dnpds40_ctx *ctx) return CUPS_BACKEND_FAILED; dnpds40_cleanup_string((char*)resp, len); - - INFO("Media End kept across power cycles: '%s'\n", (char*)resp); + i = atoi((char*)resp); + INFO("Media End kept across power cycles: %s\n", + i ? "Yes" : "No"); free(resp); } if (ctx->supports_iserial) { + int i; /* Get USB serial descriptor status */ dnpds40_build_cmd(&cmd, "MNT_RD", "USB_ISERI_SET", 0); @@ -1273,8 +1745,10 @@ static int dnpds40_get_info(struct dnpds40_ctx *ctx) return CUPS_BACKEND_FAILED; dnpds40_cleanup_string((char*)resp, len); + i = atoi((char*)resp); - INFO("Report Serial Number in USB descriptor: '%s'\n", (char*)resp); + INFO("Report Serial Number in USB descriptor: %s\n", + i ? "Yes" : "No"); free(resp); } @@ -1287,6 +1761,7 @@ static int dnpds40_get_status(struct dnpds40_ctx *ctx) struct dnpds40_cmd cmd; uint8_t *resp; int len = 0; + int count; /* Generate command */ dnpds40_build_cmd(&cmd, "STATUS", "", 0); @@ -1298,10 +1773,26 @@ static int dnpds40_get_status(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); len = atoi((char*)resp); - INFO("Printer Status: %d => %s\n", len, dnpds40_statuses(len)); + INFO("Printer Status: %s (%d)\n", dnpds40_statuses(len), len); free(resp); + /* Figure out Duplexer */ + if (ctx->type == P_DNP_DS80D) { + dnpds40_build_cmd(&cmd, "INFO", "UNIT_STATUS", 0); + + resp = dnpds40_resp_cmd(ctx, &cmd, &len); + if (!resp) + return CUPS_BACKEND_FAILED; + + dnpds40_cleanup_string((char*)resp, len); + len = atoi((char*)resp); + + INFO("Duplexer Status: %s\n", dnpds80_duplex_statuses(len)); + + free(resp); + } + /* Get remaining print quantity */ dnpds40_build_cmd(&cmd, "INFO", "PQTY", 0); @@ -1311,7 +1802,7 @@ static int dnpds40_get_status(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - INFO("Prints remaining in job: '%s'\n", (char*)resp + 4); + INFO("Prints remaining in job: %d\n", atoi((char*)resp + 4)); free(resp); @@ -1324,29 +1815,19 @@ static int dnpds40_get_status(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - INFO("Free Buffers: '%s'\n", (char*)resp + 3); + INFO("Free Buffers: %d\n", atoi((char*)resp + 3)); free(resp); /* Report media */ - INFO("Media Type: '%s'\n", dnpds40_media_types(ctx->media)); + INFO("Media Type: %s\n", dnpds40_media_types(ctx->media)); - if (ctx->supports_mqty_default) { - /* Get Media remaining */ - dnpds40_build_cmd(&cmd, "INFO", "MQTY_DEFAULT", 0); - - resp = dnpds40_resp_cmd(ctx, &cmd, &len); - if (!resp) - return CUPS_BACKEND_FAILED; + /* Report Cut Media */ + if (ctx->type == P_DNP_DS80D) + INFO("Duplex Media Type: %s\n", dnpds80_duplex_media_types(ctx->media)); - dnpds40_cleanup_string((char*)resp, len); - - len = atoi((char*)resp+4); - - INFO("Prints Available on New Media: '%d'\n", len); - - free(resp); - } + if (ctx->media_count_new) + INFO("Native Prints Available on New Media: %u\n", ctx->media_count_new); /* Get Media remaining */ dnpds40_build_cmd(&cmd, "INFO", "MQTY", 0); @@ -1357,13 +1838,15 @@ static int dnpds40_get_status(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - len = atoi((char*)resp+4); - if (ctx->type != P_DNP_DS620 && len > 0) - len -= 50; + count = atoi((char*)resp+4); + free(resp); - INFO("Prints Remaining on Media: '%d'\n", len); + /* Old-sk00l models report one less than they should */ + if (!ctx->correct_count) + count++; - free(resp); + count -= ctx->mediaoffset; + INFO("Native Prints Remaining on Media: %d\n", count); if (ctx->supports_rewind) { /* Get Media remaining */ @@ -1375,10 +1858,12 @@ static int dnpds40_get_status(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - INFO("L/PC Prints Remaining on Media: '%s'\n", (char*)resp + 4); - + count = atoi((char*)resp+4); free(resp); + } else { + // Do nothing, re-use native print count. } + INFO("Half-Size Prints Remaining on Media: %d\n", count); return 0; } @@ -1398,10 +1883,25 @@ static int dnpds40_get_counters(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - INFO("Lifetime Counter: '%s'\n", (char*)resp+2); + INFO("Lifetime Counter: %d\n", atoi((char*)resp+2)); free(resp); + if (ctx->type == P_DNP_DS620) { + /* Generate command */ + dnpds40_build_cmd(&cmd, "MNT_RD", "COUNTER_HEAD", 0); + + resp = dnpds40_resp_cmd(ctx, &cmd, &len); + if (!resp) + return CUPS_BACKEND_FAILED; + + dnpds40_cleanup_string((char*)resp, len); + + INFO("Head Counter: %d\n", atoi((char*)resp+2)); + + free(resp); + } + /* Generate command */ dnpds40_build_cmd(&cmd, "MNT_RD", "COUNTER_A", 0); @@ -1411,7 +1911,7 @@ static int dnpds40_get_counters(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - INFO("A Counter: '%s'\n", (char*)resp+2); + INFO("A Counter: %d\n", atoi((char*)resp+2)); free(resp); @@ -1424,22 +1924,24 @@ static int dnpds40_get_counters(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - INFO("B Counter: '%s'\n", (char*)resp+2); + INFO("B Counter: %d\n", atoi((char*)resp+2)); free(resp); - /* Generate command */ - dnpds40_build_cmd(&cmd, "MNT_RD", "COUNTER_P", 0); + if (ctx->supports_counterp) { + /* Generate command */ + dnpds40_build_cmd(&cmd, "MNT_RD", "COUNTER_P", 0); - resp = dnpds40_resp_cmd(ctx, &cmd, &len); - if (!resp) - return CUPS_BACKEND_FAILED; + resp = dnpds40_resp_cmd(ctx, &cmd, &len); + if (!resp) + return CUPS_BACKEND_FAILED; - dnpds40_cleanup_string((char*)resp, len); + dnpds40_cleanup_string((char*)resp, len); - INFO("P Counter: '%s'\n", (char*)resp+2); + INFO("P Counter: %d\n", atoi((char*)resp+2)); - free(resp); + free(resp); + } if (ctx->supports_matte) { /* Generate command */ @@ -1451,7 +1953,7 @@ static int dnpds40_get_counters(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - INFO("M Counter: '%s'\n", (char*)resp+2); + INFO("M Counter: %d\n", atoi((char*)resp+2)); free(resp); @@ -1464,7 +1966,21 @@ static int dnpds40_get_counters(struct dnpds40_ctx *ctx) dnpds40_cleanup_string((char*)resp, len); - INFO("Matte Counter: '%s'\n", (char*)resp+4); + INFO("Matte Counter: %d\n", atoi((char*)resp+4)); + + free(resp); + } + + if (ctx->type == P_DNP_DS80D) { + dnpds40_build_cmd(&cmd, "MNT_RD", "COUNTER_DUPLEX", 0); + + resp = dnpds40_resp_cmd(ctx, &cmd, &len); + if (!resp) + return CUPS_BACKEND_FAILED; + + dnpds40_cleanup_string((char*)resp, len); + + INFO("Duplexer Counter: %d\n", atoi((char*)resp)); free(resp); } @@ -1491,6 +2007,34 @@ static int dnpds40_clear_counter(struct dnpds40_ctx *ctx, char counter) return 0; } +static int dnpds40_cancel_job(struct dnpds40_ctx *ctx) +{ + struct dnpds40_cmd cmd; + int ret; + + /* Generate command */ + dnpds40_build_cmd(&cmd, "CNTRL", "CANCEL", 0); + + if ((ret = dnpds40_do_cmd(ctx, &cmd, NULL, 0))) + return ret; + + return 0; +} + +static int dnpds40_reset_printer(struct dnpds40_ctx *ctx) +{ + struct dnpds40_cmd cmd; + int ret; + + /* Generate command */ + dnpds40_build_cmd(&cmd, "CNTRL", "PRINTER_RESET", 0); + + if ((ret = dnpds40_do_cmd(ctx, &cmd, NULL, 0))) + return ret; + + return 0; +} + static int dnpds620_standby_mode(struct dnpds40_ctx *ctx, int delay) { struct dnpds40_cmd cmd; @@ -1560,13 +2104,15 @@ static void dnpds40_cmdline(void) { DEBUG("\t\t[ -i ] # Query printer info\n"); DEBUG("\t\t[ -I ] # Query sensor info\n"); - DEBUG("\t\t[ -s ] # Query status\n"); + DEBUG("\t\t[ -k num ] # Set standby time (1-99 minutes, 0 disables)\n"); + DEBUG("\t\t[ -K num ] # Keep Media Status Across Power Cycles (1 on, 0 off)\n"); DEBUG("\t\t[ -n ] # Query counters\n"); DEBUG("\t\t[ -N A|B|M ] # Clear counter A/B/M\n"); DEBUG("\t\t[ -p num ] # Set counter P\n"); - DEBUG("\t\t[ -k num ] # Set standby time (1-99 minutes, 0 disables)\n"); - DEBUG("\t\t[ -K num ] # Keep Media Status Across Power Cycles (1 on, 0 off)\n"); + DEBUG("\t\t[ -R ] # Reset printer\n"); + DEBUG("\t\t[ -s ] # Query status\n"); DEBUG("\t\t[ -x num ] # Set USB iSerialNumber Reporting (1 on, 0 off)\n"); + DEBUG("\t\t[ -X ] # Cancel current print job\n"); } static int dnpds40_cmdline_arg(void *vctx, int argc, char **argv) @@ -1577,38 +2123,15 @@ static int dnpds40_cmdline_arg(void *vctx, int argc, char **argv) if (!ctx) return -1; - /* Reset arg parsing */ - optind = 1; - opterr = 0; - while ((i = getopt(argc, argv, GETOPT_LIST_GLOBAL "iInN:p:sK:k:")) >= 0) { + while ((i = getopt(argc, argv, GETOPT_LIST_GLOBAL "iIk:K:nN:p:Rsx:X")) >= 0) { switch(i) { - GETOPT_PROCESS_GLOBAL + GETOPT_PROCESS_GLOBAL case 'i': j = dnpds40_get_info(ctx); break; case 'I': j = dnpds40_get_sensors(ctx); break; - case 'n': - j = dnpds40_get_counters(ctx); - break; - case 'N': - if (optarg[0] != 'A' && - optarg[0] != 'B' && - optarg[0] != 'M') - return CUPS_BACKEND_FAILED; - if (!ctx->supports_matte) { - ERROR("Printer FW does not support matte functions, please update!\n"); - return CUPS_BACKEND_FAILED; - } - j = dnpds40_clear_counter(ctx, optarg[0]); - break; - case 'p': - j = dnpds40_set_counter_p(ctx, optarg); - break; - case 's': - j = dnpds40_get_status(ctx); - break; case 'k': { int time = atoi(optarg); if (!ctx->supports_standby) { @@ -1639,6 +2162,35 @@ static int dnpds40_cmdline_arg(void *vctx, int argc, char **argv) j = dnpds620_media_keep_mode(ctx, keep); break; } + case 'n': + j = dnpds40_get_counters(ctx); + break; + case 'N': + if (optarg[0] != 'A' && + optarg[0] != 'B' && + optarg[0] != 'M') + return CUPS_BACKEND_FAILED; + if (!ctx->supports_matte) { + ERROR("Printer FW does not support matte functions, please update!\n"); + return CUPS_BACKEND_FAILED; + } + j = dnpds40_clear_counter(ctx, optarg[0]); + break; + case 'p': + if (!ctx->supports_counterp) { + ERROR("Printer FW dows not support P counter!\n"); + return CUPS_BACKEND_FAILED; + } + j = dnpds40_set_counter_p(ctx, optarg); + break; + case 'R': { + j = dnpds40_reset_printer(ctx); + break; + } + case 's': { + j = dnpds40_get_status(ctx); + break; + } case 'x': { int enable = atoi(optarg); if (!ctx->supports_iserial) { @@ -1654,6 +2206,10 @@ static int dnpds40_cmdline_arg(void *vctx, int argc, char **argv) j = dnpds620_iserial_mode(ctx, enable); break; } + case 'X': { + j = dnpds40_cancel_job(ctx); + break; + } default: break; /* Ignore completely */ } @@ -1667,7 +2223,7 @@ static int dnpds40_cmdline_arg(void *vctx, int argc, char **argv) /* Exported */ struct dyesub_backend dnpds40_backend = { .name = "DNP DS40/DS80/DSRX1/DS620", - .version = "0.61.2", + .version = "0.88", .uri_prefix = "dnpds40", .cmdline_usage = dnpds40_cmdline, .cmdline_arg = dnpds40_cmdline_arg, @@ -1681,10 +2237,10 @@ struct dyesub_backend dnpds40_backend = { { USB_VID_CITIZEN, USB_PID_DNP_DS40, P_DNP_DS40, ""}, { USB_VID_CITIZEN, USB_PID_DNP_DS80, P_DNP_DS80, ""}, { USB_VID_CITIZEN, USB_PID_DNP_DSRX1, P_DNP_DSRX1, ""}, + { USB_VID_CITIZEN, USB_PID_DNP_DS620_OLD, P_DNP_DS620, ""}, { USB_VID_DNP, USB_PID_DNP_DS620, P_DNP_DS620, ""}, -// { USB_VID_DNP, USB_PID_DNP_DS80D, P_DNP_DS80D, ""}, -// { USB_VID_CITIZEN, USB_PID_CITIZEN_CW-02, P_DNP_DS40, ""}, -// { USB_VID_CITIZEN, USB_PID_CITIZEN_OP900II, P_DNP_DS40, ""}, + { USB_VID_DNP, USB_PID_DNP_DS80D, P_DNP_DS80D, ""}, + { USB_VID_CITIZEN, USB_PID_CITIZEN_CW02, P_DNP_DS40, ""}, { 0, 0, 0, ""} } }; diff --git a/src/cups/kodak1400_print.c b/src/cups/backend_kodak1400.c index c8e257c..3b97e3a 100644 --- a/src/cups/kodak1400_print.c +++ b/src/cups/backend_kodak1400.c @@ -1,7 +1,7 @@ /* * Kodak Professional 1400/805 CUPS backend -- libusb-1.0 version * - * (c) 2013-2015 Solomon Peachy <pizza@shaftnet.org> + * (c) 2013-2016 Solomon Peachy <pizza@shaftnet.org> * * The latest version of this program can be found at: * @@ -264,9 +264,6 @@ int kodak1400_cmdline_arg(void *vctx, int argc, char **argv) if (!ctx) return -1; - /* Reset arg parsing */ - optind = 1; - opterr = 0; while ((i = getopt(argc, argv, GETOPT_LIST_GLOBAL "C:")) >= 0) { switch(i) { GETOPT_PROCESS_GLOBAL @@ -395,7 +392,7 @@ static int kodak1400_read_parse(void *vctx, int data_fd) { do { ret = read(data_fd, ptr, remain); if (ret < 0) { - ERROR("Read failed (%d/%d/%d) (%d/%d @ %d)\n", + ERROR("Read failed (%d/%d/%u) (%d/%u @ %d)\n", ret, remain, ctx->hdr.columns, i, ctx->hdr.rows, j); perror("ERROR: Read failed"); diff --git a/src/cups/kodak605_print.c b/src/cups/backend_kodak605.c index ad2e6bf..1c0382d 100644 --- a/src/cups/kodak605_print.c +++ b/src/cups/backend_kodak605.c @@ -1,7 +1,7 @@ /* * Kodak 605 Photo Printer CUPS backend -- libusb-1.0 version * - * (c) 2013-2015 Solomon Peachy <pizza@shaftnet.org> + * (c) 2013-2016 Solomon Peachy <pizza@shaftnet.org> * * The latest version of this program can be found at: * @@ -74,13 +74,16 @@ struct kodak605_medium { struct kodak605_media_list { struct kodak605_sts_hdr hdr; uint8_t unk; /* always seen 02 */ - uint8_t type; /* KODAK_MEDIA_* */ + uint8_t type; /* KODAK68x0_MEDIA_* */ uint8_t count; struct kodak605_medium entries[]; } __attribute__((packed)); -#define KODAK_MEDIA_6R 0x0b -#define KODAK_MEDIA_NONE 0x00 +#define KODAK68x0_MEDIA_6R 0x0b // 197-4096 +#define KODAK68x0_MEDIA_UNK 0x03 +#define KODAK68x0_MEDIA_6TR2 0x2c // 396-2941 +#define KODAK68x0_MEDIA_NONE 0x00 +/* 6R: Also seen: 101-0867, 141-9597, 659-9054, 169-6418, DNP 900-060 */ #define MAX_MEDIA_LEN 128 @@ -145,6 +148,20 @@ static char *bank_statuses(uint8_t v) } } +static const char *kodak68xx_mediatypes(int type) +{ + switch(type) { + case KODAK68x0_MEDIA_NONE: + return "No media"; + case KODAK68x0_MEDIA_6R: + case KODAK68x0_MEDIA_6TR2: + return "Kodak 6R"; + default: + return "Unknown"; + } + return "Unknown"; +} + #define CMDBUF_LEN 4 /* Private data stucture */ @@ -161,6 +178,8 @@ struct kodak605_ctx { uint8_t *databuf; int datalen; + + uint8_t last_donor; }; static int kodak605_get_media(struct kodak605_ctx *ctx, struct kodak605_media_list *media) @@ -231,7 +250,12 @@ static void kodak605_attach(void *vctx, struct libusb_device_handle *dev, desc.idVendor, desc.idProduct); /* Make sure jobid is sane */ - ctx->jobid = (jobid & 0x7f) + 1; + ctx->jobid = jobid & 0x7f; + if (!ctx->jobid) + ctx->jobid++; + + /* Init */ + ctx->last_donor = 255; /* Query media info */ if (kodak605_get_media(ctx, ctx->media)) { @@ -366,8 +390,12 @@ static int kodak605_main_loop(void *vctx, int copies) { return CUPS_BACKEND_HOLD; } - /* Use specified jobid */ - ctx->hdr.jobid = ctx->jobid; + /* Tell CUPS about the consumables we report */ + ATTR("marker-colors=#00FFFF#FF00FF#FFFF00\n"); + ATTR("marker-high-levels=100\n"); + ATTR("marker-low-levels=10\n"); + ATTR("marker-names='%s'\n", kodak68xx_mediatypes(ctx->media->type)); + ATTR("marker-types=ribbonWax\n"); INFO("Waiting for printer idle\n"); @@ -375,8 +403,23 @@ static int kodak605_main_loop(void *vctx, int copies) { if ((ret = kodak605_get_status(ctx, &sts))) return CUPS_BACKEND_FAILED; + if (ctx->last_donor != sts.donor) { + ctx->last_donor = sts.donor; + ATTR("marker-levels=%u\n", sts.donor); + } + // XXX check for errors + /* Make sure we're not colliding with an existing + jobid */ + while (ctx->jobid == sts.b1_id || + ctx->jobid == sts.b2_id) { + ctx->jobid++; + ctx->jobid &= 0x7f; + if (!ctx->jobid) + ctx->jobid++; + } + /* Wait for a free buffer */ if (sts.b1_sts == BANK_STATUS_FREE || sts.b2_sts == BANK_STATUS_FREE) { @@ -386,8 +429,11 @@ static int kodak605_main_loop(void *vctx, int copies) { sleep(1); } + /* Use specified jobid */ + ctx->hdr.jobid = ctx->jobid; + { - INFO("Sending image header\n"); + INFO("Sending image header (internal id %u)\n", ctx->jobid); if ((ret = send_data(ctx->dev, ctx->endp_down, (uint8_t*)&ctx->hdr, sizeof(ctx->hdr)))) return CUPS_BACKEND_FAILED; @@ -415,10 +461,15 @@ static int kodak605_main_loop(void *vctx, int copies) { INFO("Waiting for printer to acknowledge completion\n"); do { sleep(1); - if ((ret = kodak605_get_status(ctx, &sts))) + if ((kodak605_get_status(ctx, &sts)) != 0) return CUPS_BACKEND_FAILED; - // XXX check for errors ? + // XXX check for errors + + if (ctx->last_donor != sts.donor) { + ctx->last_donor = sts.donor; + ATTR("marker-levels=%u\n", sts.donor); + } // XXX check for errors ? /* Wait for completion */ if (sts.b1_id == ctx->jobid && sts.b1_complete == sts.b1_total) @@ -437,40 +488,66 @@ static int kodak605_main_loop(void *vctx, int copies) { return CUPS_BACKEND_OK; } -static void kodak605_dump_status(struct kodak605_status *sts) +static void kodak605_dump_status(struct kodak605_ctx *ctx, struct kodak605_status *sts) { INFO("Bank 1: %s Job %03u @ %03u/%03u\n", bank_statuses(sts->b1_sts), sts->b1_id, - le16_to_cpu(sts->b1_complete), le16_to_cpu(sts->b1_complete)); + le16_to_cpu(sts->b1_complete), le16_to_cpu(sts->b1_total)); INFO("Bank 2: %s Job %03u @ %03u/%03u\n", bank_statuses(sts->b2_sts), sts->b2_id, - le16_to_cpu(sts->b2_complete), le16_to_cpu(sts->b2_complete)); + le16_to_cpu(sts->b2_complete), le16_to_cpu(sts->b2_total)); + + INFO("Lifetime prints : %u\n", be32_to_cpu(sts->ctr_life)); + INFO("Cutter actuations : %u\n", be32_to_cpu(sts->ctr_cut)); + INFO("Head prints : %u\n", be32_to_cpu(sts->ctr_head)); + INFO("Media prints : %u\n", be32_to_cpu(sts->ctr_media)); + { + int max; - INFO("Lifetime prints : %d\n", be32_to_cpu(sts->ctr_life)); - INFO("Cutter actuations : %d\n", be32_to_cpu(sts->ctr_cut)); - INFO("Head prints : %d\n", be32_to_cpu(sts->ctr_head)); - INFO("Media prints : %d\n", be32_to_cpu(sts->ctr_media)); - INFO("Donor : %d%%\n", sts->donor); + switch(ctx->media->type) { + case KODAK68x0_MEDIA_6R: + case KODAK68x0_MEDIA_6TR2: + max = 375; + break; + default: + max = 0; + break; + } + + if (max) { + INFO("\t Remaining : %u\n", max - be32_to_cpu(sts->ctr_media)); + } else { + INFO("\t Remaining : Unknown\n"); + } + } + + INFO("Donor : %u%%\n", sts->donor); } static void kodak605_dump_mediainfo(struct kodak605_media_list *media) { int i; - if (media->type == KODAK_MEDIA_NONE) { + if (media->type == KODAK68x0_MEDIA_NONE) { DEBUG("No Media Loaded\n"); return; } - if (media->type == KODAK_MEDIA_6R) { - DEBUG("Media type: 6R (Kodak 197-4096 or equivalent)\n"); - } else { - DEBUG("Media type %02x (unknown, please report!)\n", media->type); - } + switch (media->type) { + case KODAK68x0_MEDIA_6R: + INFO("Media type: 6R (Kodak 197-4096 or equivalent)\n"); + break; + case KODAK68x0_MEDIA_6TR2: + INFO("Media type: 6R (Kodak 396-2941 or equivalent)\n"); + break; + default: + INFO("Media type %02x (unknown, please report!)\n", media->type); + break; + } DEBUG("Legal print sizes:\n"); for (i = 0 ; i < media->count ; i++) { - DEBUG("\t%d: %dx%d\n", i, + DEBUG("\t%d: %ux%u\n", i, le16_to_cpu(media->entries[i].cols), le16_to_cpu(media->entries[i].rows)); } @@ -567,9 +644,6 @@ static int kodak605_cmdline_arg(void *vctx, int argc, char **argv) if (!ctx) return -1; - /* Reset arg parsing */ - optind = 1; - opterr = 0; while ((i = getopt(argc, argv, GETOPT_LIST_GLOBAL "C:ms")) >= 0) { switch(i) { GETOPT_PROCESS_GLOBAL @@ -584,7 +658,7 @@ static int kodak605_cmdline_arg(void *vctx, int argc, char **argv) j = kodak605_get_status(ctx, &sts); if (!j) - kodak605_dump_status(&sts); + kodak605_dump_status(ctx, &sts); break; } default: @@ -600,7 +674,7 @@ static int kodak605_cmdline_arg(void *vctx, int argc, char **argv) /* Exported */ struct dyesub_backend kodak605_backend = { .name = "Kodak 605", - .version = "0.24", + .version = "0.27", .uri_prefix = "kodak605", .cmdline_usage = kodak605_cmdline, .cmdline_arg = kodak605_cmdline_arg, diff --git a/src/cups/kodak6800_print.c b/src/cups/backend_kodak6800.c index 1e77850..63a6063 100644 --- a/src/cups/kodak6800_print.c +++ b/src/cups/backend_kodak6800.c @@ -1,7 +1,7 @@ /* * Kodak 6800/6850 Photo Printer CUPS backend -- libusb-1.0 version * - * (c) 2013-2015 Solomon Peachy <pizza@shaftnet.org> + * (c) 2013-2016 Solomon Peachy <pizza@shaftnet.org> * * Development of this backend was sponsored by: * @@ -199,7 +199,7 @@ struct kodak6800_printsize { uint16_t height; /* BE */ uint8_t type; /* MEDIA_TYPE_* [ ie paper ] */ uint8_t code; /* 00, 01, 02, 03, 04, 05 seen. An index? */ - uint8_t code2; /* 00, 01 seen. Seems to be 1 only after a 4x6 printed. */ + uint8_t code2; /* 00, 01 seen. Alternates every other 4x6 printed, but only 1 on unknown/1844x2490 print size. */ uint8_t null[2]; } __attribute__((packed)); @@ -207,15 +207,17 @@ struct kodak6800_printsize { struct kodak68x0_media_readback { uint8_t hdr; /* Always 0x01 */ - uint8_t media; /* Always 0x00 (none), 0x0b or 0x03 */ + uint8_t type; /* Media code, KODAK68x0_MEDIA_xxx */ uint8_t null[5]; uint8_t count; /* Always 0x04 (6800) or 0x06 (6850)? */ struct kodak6800_printsize sizes[]; } __attribute__((packed)); -#define KODAK68x0_MEDIA_6R 0x0b +#define KODAK68x0_MEDIA_6R 0x0b // 197-4096 #define KODAK68x0_MEDIA_UNK 0x03 +#define KODAK68x0_MEDIA_6TR2 0x2c // 396-2941 #define KODAK68x0_MEDIA_NONE 0x00 +/* 6R: Also seen: 101-0867, 141-9597, 659-9054, 169-6418, DNP 900-060 */ #define CMDBUF_LEN 17 @@ -234,8 +236,24 @@ struct kodak6800_ctx { struct kodak6800_hdr hdr; uint8_t *databuf; int datalen; + + uint8_t last_donor; }; +static const char *kodak68xx_mediatypes(int type) +{ + switch(type) { + case KODAK68x0_MEDIA_NONE: + return "No media"; + case KODAK68x0_MEDIA_6R: + case KODAK68x0_MEDIA_6TR2: + return "Kodak 6R"; + default: + return "Unknown"; + } + return "Unknown"; +} + /* Baseline commands */ static int kodak6800_do_cmd(struct kodak6800_ctx *ctx, void *cmd, int cmd_len, @@ -258,26 +276,34 @@ static int kodak6800_do_cmd(struct kodak6800_ctx *ctx, return 0; } + + static void kodak68x0_dump_mediainfo(struct kodak68x0_media_readback *media) { int i; - if (media->media == KODAK68x0_MEDIA_NONE) { + if (media->type == KODAK68x0_MEDIA_NONE) { INFO("No Media Loaded\n"); return; } - if (media->media == KODAK68x0_MEDIA_6R) { + switch (media->type) { + case KODAK68x0_MEDIA_6R: INFO("Media type: 6R (Kodak 197-4096 or equivalent)\n"); - } else { - INFO("Media type %02x (unknown, please report!)\n", media->media); + break; + case KODAK68x0_MEDIA_6TR2: + INFO("Media type: 6R (Kodak 396-2941 or equivalent)\n"); + break; + default: + INFO("Media type %02x (unknown, please report!)\n", media->type); + break; } INFO("Legal print sizes:\n"); for (i = 0 ; i < media->count ; i++) { INFO("\t%d: %dx%d (%02x) %s\n", i, - be16_to_cpu(media->sizes[i].width), - be16_to_cpu(media->sizes[i].height), - media->sizes[i].code, - media->sizes[i].code2? "Disallowed" : ""); + be16_to_cpu(media->sizes[i].width), + be16_to_cpu(media->sizes[i].height), + media->sizes[i].code, + media->sizes[i].code2? "Disallowed?" : ""); } INFO("\n"); } @@ -296,6 +322,7 @@ static int kodak6800_get_mediainfo(struct kodak6800_ctx *ctx, struct kodak68x0_m req[3] = 0x48; req[4] = 0x43; req[5] = 0x1a; + req[6] = 0x00; /* This can be non-zero for additional "banks" */ /* Issue command and get response */ if ((ret = kodak6800_do_cmd(ctx, req, sizeof(req), @@ -345,6 +372,36 @@ static int kodak68x0_canceljob(struct kodak6800_ctx *ctx, return 0; } +static int kodak68x0_reset(struct kodak6800_ctx *ctx) +{ + uint8_t req[16]; + int ret, num; + struct kodak68x0_status_readback sts; + + memset(req, 0, sizeof(req)); + + req[0] = 0x03; + req[1] = 0x1b; + req[2] = 0x43; + req[3] = 0x48; + req[4] = 0xc0; + + /* Issue command and get response */ + if ((ret = kodak6800_do_cmd(ctx, req, sizeof(req), + &sts, sizeof(sts), + &num))) + return ret; + + /* Validate proper response */ + if (sts.hdr != CMD_CODE_OK) { + ERROR("Unexpected response from job cancel!\n"); + return -99; + } + + return 0; +} + + /* Structure dumps */ static char *kodak68x0_status_str(struct kodak68x0_status_readback *resp) { @@ -512,10 +569,10 @@ static void kodak68x0_dump_status(struct kodak6800_ctx *ctx, struct kodak68x0_st kodak68x0_status_str(status), status->status1, be32_to_cpu(status->status2), status->errcode); - INFO("Bank 1 ID: %d\n", status->b1_jobid); + INFO("Bank 1 ID: %u\n", status->b1_jobid); INFO("\tPrints: %d/%d complete\n", be16_to_cpu(status->b1_complete), be16_to_cpu(status->b1_total)); - INFO("Bank 2 ID: %d\n", status->b2_jobid); + INFO("Bank 2 ID: %u\n", status->b2_jobid); INFO("\tPrints: %d/%d complete\n", be16_to_cpu(status->b2_complete), be16_to_cpu(status->b2_total)); @@ -536,30 +593,34 @@ static void kodak68x0_dump_status(struct kodak6800_ctx *ctx, struct kodak68x0_st INFO("Tone Curve Status: %s\n", detail); INFO("Counters:\n"); - INFO("\tLifetime : %d\n", be32_to_cpu(status->lifetime)); - INFO("\tThermal Head : %d\n", be32_to_cpu(status->maint)); - INFO("\tCutter : %d\n", be32_to_cpu(status->cutter)); + INFO("\tLifetime : %u\n", be32_to_cpu(status->lifetime)); + INFO("\tThermal Head : %u\n", be32_to_cpu(status->maint)); + INFO("\tCutter : %u\n", be32_to_cpu(status->cutter)); if (ctx->type == P_KODAK_6850) { int max; - INFO("\tMedia : %d\n", be32_to_cpu(status->media)); + INFO("\tMedia : %u\n", be32_to_cpu(status->media)); - if (ctx->media->media == KODAK68x0_MEDIA_6R) { + switch(ctx->media->type) { + case KODAK68x0_MEDIA_6R: + case KODAK68x0_MEDIA_6TR2: max = 375; - } else { + break; + default: max = 0; + break; } if (max) { - INFO("\t Remaining : %d\n", max - be32_to_cpu(status->media)); + INFO("\t Remaining : %d\n", max - be32_to_cpu(status->media)); } else { - INFO("\t Remaining : Unknown\n"); + INFO("\t Remaining : Unknown\n"); } } - INFO("Main FW version: %d\n", be16_to_cpu(status->main_fw)); - INFO("DSP FW version : %d\n", be16_to_cpu(status->dsp_fw)); - INFO("Donor : %d%%\n", status->donor); + INFO("Main FW version : %d\n", be16_to_cpu(status->main_fw)); + INFO("DSP FW version : %d\n", be16_to_cpu(status->dsp_fw)); + INFO("Donor : %u%%\n", status->donor); INFO("\n"); } @@ -623,8 +684,8 @@ static int kodak6800_get_tonecurve(struct kodak6800_ctx *ctx, char *fname) cmdbuf[8] = 0x4e; cmdbuf[9] = 0x45; cmdbuf[10] = 0x72; - cmdbuf[11] = 0x01; - cmdbuf[12] = 0x00; + cmdbuf[11] = 0x01; /* 01 for user tonecurve, can be 00 or 02 */ + cmdbuf[12] = 0x00; /* param table? */ cmdbuf[13] = 0x00; cmdbuf[14] = 0x00; cmdbuf[15] = 0x00; @@ -739,8 +800,8 @@ static int kodak6800_set_tonecurve(struct kodak6800_ctx *ctx, char *fname) cmdbuf[8] = 0x4e; cmdbuf[9] = 0x45; cmdbuf[10] = 0x77; - cmdbuf[11] = 0x01; - cmdbuf[12] = 0x00; + cmdbuf[11] = 0x01; /* User TC. Can be 00 or 02 */ + cmdbuf[12] = 0x00; /* param table? */ cmdbuf[13] = 0x00; cmdbuf[14] = 0x00; cmdbuf[15] = 0x00; @@ -838,7 +899,7 @@ static int kodak6800_query_serno(struct libusb_device_handle *dev, uint8_t endp_ return 0; } -static int kodak6850_send_init(struct kodak6800_ctx *ctx) +static int kodak6850_send_unk(struct kodak6800_ctx *ctx) { uint8_t cmdbuf[16]; uint8_t rdbuf[64]; @@ -869,12 +930,13 @@ static int kodak6850_send_init(struct kodak6800_ctx *ctx) return CUPS_BACKEND_FAILED; } - // XXX I believe this the media position - // saying when we have a 4x6 left on an 8x6 blank +#if 0 + // XXX No particular idea what this actually is if (rdbuf[1] != 0x01 && rdbuf[1] != 0x00) { ERROR("Unexpected status code (0x%02x)!\n", rdbuf[1]); return CUPS_BACKEND_FAILED; } +#endif return ret; } @@ -884,6 +946,7 @@ static void kodak6800_cmdline(void) DEBUG("\t\t[ -C filename ] # Set tone curve\n"); DEBUG("\t\t[ -m ] # Query media\n"); DEBUG("\t\t[ -s ] # Query status\n"); + DEBUG("\t\t[ -R ] # Reset printer\n"); DEBUG("\t\t[ -X jobid ] # Cancel Job\n"); } @@ -895,7 +958,7 @@ static int kodak6800_cmdline_arg(void *vctx, int argc, char **argv) if (!ctx) return -1; - while ((i = getopt(argc, argv, GETOPT_LIST_GLOBAL "C:c:msX:")) >= 0) { + while ((i = getopt(argc, argv, GETOPT_LIST_GLOBAL "C:c:mRsX:")) >= 0) { switch(i) { GETOPT_PROCESS_GLOBAL case 'c': @@ -907,6 +970,9 @@ static int kodak6800_cmdline_arg(void *vctx, int argc, char **argv) case 'm': kodak68x0_dump_mediainfo(ctx->media); break; + case 'R': + kodak68x0_reset(ctx); + break; case 's': { struct kodak68x0_status_readback status; j = kodak6800_get_status(ctx, &status); @@ -961,7 +1027,12 @@ static void kodak6800_attach(void *vctx, struct libusb_device_handle *dev, desc.idVendor, desc.idProduct); /* Ensure jobid is sane */ - ctx->jobid = (jobid & 0x7f) + 1; + ctx->jobid = jobid & 0x7f; + if (!ctx->jobid) + ctx->jobid++; + + /* Init */ + ctx->last_donor = 255; /* Query media info */ if (kodak6800_get_mediainfo(ctx, ctx->media)) { @@ -1053,18 +1124,11 @@ static int kodak6800_main_loop(void *vctx, int copies) { /* Printer handles generating copies.. */ ctx->hdr.copies = cpu_to_be16(uint16_to_packed_bcd(copies)); - /* Validate media */ - if (ctx->media->media != KODAK68x0_MEDIA_6R && - ctx->media->media != KODAK68x0_MEDIA_UNK) { - ERROR("Unrecognized media type %02x\n", ctx->media->media); - return CUPS_BACKEND_STOP; - } - /* Validate against supported media list */ for (num = 0 ; num < ctx->media->count; num++) { if (ctx->media->sizes[num].height == ctx->hdr.rows && ctx->media->sizes[num].width == ctx->hdr.columns && - ctx->media->sizes[num].code2 == 0x00) + ctx->media->sizes[num].code2 == 0x00) // XXX code2? break; } if (num == ctx->media->count) { @@ -1072,12 +1136,24 @@ static int kodak6800_main_loop(void *vctx, int copies) { return CUPS_BACKEND_HOLD; } + /* Tell CUPS about the consumables we report */ + ATTR("marker-colors=#00FFFF#FF00FF#FFFF00\n"); + ATTR("marker-high-levels=100\n"); + ATTR("marker-low-levels=10\n"); + ATTR("marker-names='%s'\n", kodak68xx_mediatypes(ctx->media->type)); + ATTR("marker-types=ribbonWax\n"); + INFO("Waiting for printer idle\n"); while(1) { if (kodak6800_get_status(ctx, &status)) return CUPS_BACKEND_FAILED; + if (ctx->last_donor != status.donor) { + ctx->last_donor = status.donor; + ATTR("marker-levels=%u\n", status.donor); + } + if (status.status1 == STATE_STATUS1_ERROR) { INFO("Printer State: %s # %02x %08x %02x\n", kodak68x0_status_str(&status), @@ -1088,6 +1164,16 @@ static int kodak6800_main_loop(void *vctx, int copies) { if (status.status == STATUS_IDLE) break; + /* make sure we're not colliding with an existing + jobid */ + while (ctx->jobid == status.b1_jobid || + ctx->jobid == status.b2_jobid) { + ctx->jobid++; + ctx->jobid &= 0x7f; + if (!ctx->jobid) + ctx->jobid++; + } + /* See if we have an open bank */ if (!status.b1_remain || !status.b2_remain) @@ -1096,9 +1182,9 @@ static int kodak6800_main_loop(void *vctx, int copies) { sleep(1); } + /* This command is unknown, sort of a secondary status query */ if (ctx->type == P_KODAK_6850) { -// INFO("Sending 6850 init sequence\n"); - ret = kodak6850_send_init(ctx); + ret = kodak6850_send_unk(ctx); if (ret) return ret; } @@ -1107,6 +1193,7 @@ static int kodak6800_main_loop(void *vctx, int copies) { #if 0 /* If we want to disable 4x6 rewind on 8x6 media.. */ + // XXX not sure about this...? if (ctx->hdr.size == 0x00 && be16_to_cpu(ctx->media->sizes[0].width) == 0x0982) { ctx->hdr.size = 0x06; @@ -1114,7 +1201,7 @@ static int kodak6800_main_loop(void *vctx, int copies) { } #endif - INFO("Initiating Print Job\n"); + INFO("Sending Print Job (internal id %u)\n", ctx->jobid); if ((ret = kodak6800_do_cmd(ctx, (uint8_t*) &ctx->hdr, sizeof(ctx->hdr), &status, sizeof(status), &num))) @@ -1127,8 +1214,8 @@ static int kodak6800_main_loop(void *vctx, int copies) { // sleep(1); // Appears to be necessary for reliability INFO("Sending image data\n"); - if ((ret = send_data(ctx->dev, ctx->endp_down, - ctx->databuf, ctx->datalen))) + if ((send_data(ctx->dev, ctx->endp_down, + ctx->databuf, ctx->datalen)) != 0) return CUPS_BACKEND_FAILED; INFO("Waiting for printer to acknowledge completion\n"); @@ -1137,6 +1224,11 @@ static int kodak6800_main_loop(void *vctx, int copies) { if (kodak6800_get_status(ctx, &status)) return CUPS_BACKEND_FAILED; + if (ctx->last_donor != status.donor) { + ctx->last_donor = status.donor; + ATTR("marker-levels=%u\n", status.donor); + } + if (status.status1 == STATE_STATUS1_ERROR) { INFO("Printer State: %s # %02x %08x %02x\n", kodak68x0_status_str(&status), @@ -1165,7 +1257,7 @@ static int kodak6800_main_loop(void *vctx, int copies) { /* Exported */ struct dyesub_backend kodak6800_backend = { .name = "Kodak 6800/6850", - .version = "0.51", + .version = "0.57", .uri_prefix = "kodak6800", .cmdline_usage = kodak6800_cmdline, .cmdline_arg = kodak6800_cmdline_arg, @@ -1193,7 +1285,8 @@ struct dyesub_backend kodak6800_backend = { Header: - 03 1b 43 48 43 0a 00 01 Fixed header + 03 1b 43 48 43 0a 00 Fixed header + II Job ID (1-255) NN NN Number of copies in BCD form (0001->9999) WW WW Number of columns (Fixed at 1844 on 6800) HH HH Number of rows. @@ -1209,12 +1302,14 @@ struct dyesub_backend kodak6800_backend = { ************************************************************************ + This command is unique to the 6850: + -> 03 1b 43 48 43 4c 00 00 00 00 00 00 00 00 00 00 [???] <- [51 octets] - 01 01 43 48 43 4c 00 00 00 00 00 00 00 00 00 00 - 00 00 01 29 00 00 3b 0a 00 00 00 0e 00 03 02 90 - 00 01 02 1d 03 00 00 00 00 01 00 01 00 00 00 00 + 01 01 43 48 43 4c 00 00 00 00 00 00 00 00 00 00 <-- Everything after this + 00 00 01 29 00 00 3b 0a 00 00 00 0e 00 03 02 90 line is the same as + 00 01 02 1d 03 00 00 00 00 01 00 01 00 00 00 00 the "status" resp. 00 00 00 01 00 43 48 43 4c 00 00 00 00 00 00 00 00 00 00 diff --git a/src/cups/backend_mitsu70x.c b/src/cups/backend_mitsu70x.c new file mode 100644 index 0000000..e0b0587 --- /dev/null +++ b/src/cups/backend_mitsu70x.c @@ -0,0 +1,1609 @@ +/* + * Mitsubishi CP-D70/D707 Photo Printer CUPS backend -- libusb-1.0 version + * + * (c) 2013-2016 Solomon Peachy <pizza@shaftnet.org> + * + * The latest version of this program can be found at: + * + * http://git.shaftnet.org/cgit/selphy_print.git + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + * [http://www.gnu.org/licenses/gpl-2.0.html] + * + */ + +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <unistd.h> + +#include <sys/types.h> +#include <sys/stat.h> +#include <fcntl.h> +#include <signal.h> + +#define BACKEND mitsu70x_backend + +#include "backend_common.h" + +#define USB_VID_MITSU 0x06D3 +#define USB_PID_MITSU_D70X 0x3B30 +#define USB_PID_MITSU_K60 0x3B31 +//#define USB_PID_MITSU_D80 XXXXXX +#define USB_VID_KODAK 0x040a +#define USB_PID_KODAK305 0x404f +//#define USB_VID_FUJIFILM XXXXXX +//#define USB_PID_FUJI_ASK300 XXXXXX + +//#define ENABLE_CORRTABLES + +/* Private data stucture */ +struct mitsu70x_ctx { + struct libusb_device_handle *dev; + uint8_t endp_up; + uint8_t endp_down; + int type; + + uint8_t *databuf; + int datalen; + + uint32_t matte; + + uint16_t jobid; + uint16_t rows; + uint16_t cols; + + uint16_t last_donor_l; + uint16_t last_donor_u; + int num_decks; + +#ifdef ENABLE_CORRTABLES + struct mitsu70x_corrdata *corrdata; + struct mitsu70x_corrdatalens *corrdatalens; + char *laminatefname; + char *lutfname; + + int raw_format; +#endif +}; + +/* Printer data structures */ +struct mitsu70x_jobstatus { + uint8_t hdr[4]; + uint16_t jobid; + uint16_t mecha_no; + uint8_t job_status[4]; + uint8_t memory; + uint8_t power; + uint8_t mecha_status[2]; + uint8_t temperature; + uint8_t error_status[3]; + uint8_t reserved[6]; +} __attribute__((packed)); + +struct mitsu70x_jobs { + uint8_t hdr[4]; + uint16_t dummy; + uint16_t jobid_0; + uint8_t job0_status[4]; + uint16_t jobid_1; + uint8_t job1_status[4]; + // XXX are there more? +} __attribute__((packed)); + +#define TEMPERATURE_NORMAL 0x00 +#define TEMPERATURE_PREHEAT 0x40 +#define TEMPERATURE_COOLING 0x80 + +#define MECHA_STATUS_INIT 0x80 +#define MECHA_STATUS_FEED 0x50 +#define MECHA_STATUS_LOAD 0x40 +#define MECHA_STATUS_PRINT 0x20 +#define MECHA_STATUS_IDLE 0x00 + +#define JOB_STATUS0_NONE 0x00 +#define JOB_STATUS0_DATA 0x10 +#define JOB_STATUS0_QUEUE 0x20 +#define JOB_STATUS0_PRINT 0x50 +#define JOB_STATUS0_ASSIGN 0x70 // XXX undefined. +#define JOB_STATUS0_END 0x80 + +#define JOB_STATUS1_PRINT_MEDIALOAD 0x10 +#define JOB_STATUS1_PRINT_PRE_Y 0x20 +#define JOB_STATUS1_PRINT_Y 0x30 +#define JOB_STATUS1_PRINT_PRE_M 0x40 +#define JOB_STATUS1_PRINT_M 0x50 +#define JOB_STATUS1_PRINT_PRE_C 0x60 +#define JOB_STATUS1_PRINT_C 0x70 +#define JOB_STATUS1_PRINT_PRE_OC 0x80 +#define JOB_STATUS1_PRINT_OC 0x90 +#define JOB_STATUS1_PRINT_EJECT 0xA0 + +#define JOB_STATUS1_END_OK 0x00 +#define JOB_STATUS1_END_MECHA 0x10 // 0x10...0x7f +#define JOB_STATUS1_END_HEADER 0x80 +#define JOB_STATUS1_END_PRINT 0x90 +#define JOB_STATUS1_END_INTERRUPT 0xA0 + +#define JOB_STATUS2_END_HEADER_ERROR 0x00 +#define JOB_STATUS2_END_HEADER_MEMORY 0x10 +#define JOB_STATUS2_END_PRINT_MEDIA 0x00 +#define JOB_STATUS2_END_PRINT_PREVERR 0x10 +#define JOB_STATUS2_END_INT_TIMEOUT 0x00 +#define JOB_STATUS2_END_INT_CANCEL 0x10 +#define JOB_STATUS2_END_INT_DISCON 0x20 + +/* Error codes */ +#define ERROR_STATUS0_NOSTRIPBIN 0x01 +#define ERROR_STATUS0_NORIBBON 0x02 +#define ERROR_STATUS0_NOPAPER 0x03 +#define ERROR_STATUS0_MEDIAMISMATCH 0x04 +#define ERROR_STATUS0_RIBBONCNTEND 0x05 +#define ERROR_STATUS0_BADRIBBON 0x06 +#define ERROR_STATUS0_BADJOBPARAM 0x07 +#define ERROR_STATUS0_PAPEREND 0x08 +#define ERROR_STATUS0_RIBBONEND 0x09 +#define ERROR_STATUS0_DOOROPEN_IDLE 0x0A +#define ERROR_STATUS0_DOOROPEN_PRNT 0x0B +#define ERROR_STATUS0_POWEROFF 0x0C // nonsense.. heh. +#define ERROR_STATUS0_NOMCOP 0x0D +#define ERROR_STATUS0_RIBBONSKIP1 0x0E +#define ERROR_STATUS0_RIBBONSKIP2 0x0F +#define ERROR_STATUS0_RIBBONJAM 0x10 +#define ERROR_STATUS0_RIBBON_OTHER 0x11 // 0x11->0x1F +#define ERROR_STATUS0_PAPER_JAM 0x20 // 0x20->0x2F +#define ERROR_STATUS0_MECHANICAL 0x30 // 0x30->0x39 +#define ERROR_STATUS0_RFID 0x3A +#define ERROR_STATUS0_FLASH 0x3B +#define ERROR_STATUS0_EEPROM 0x3C +#define ERROR_STATUS0_PREHEAT 0x3D +#define ERROR_STATUS0_MDASTATE 0x3E +#define ERROR_STATUS0_PSUFANLOCKED 0x3F +#define ERROR_STATUS0_OTHERS 0x40 // 0x40..? + +/* Error classifications */ +#define ERROR_STATUS1_PAPER 0x01 +#define ERROR_STATUS1_RIBBON 0x02 +#define ERROR_STATUS1_SETTING 0x03 +#define ERROR_STATUS1_OPEN 0x05 +#define ERROR_STATUS1_NOSTRIPBIN 0x06 +#define ERROR_STATUS1_PAPERJAM 0x07 +#define ERROR_STATUS1_RIBBONSYS 0x08 +#define ERROR_STATUS1_MECHANICAL 0x09 +#define ERROR_STATUS1_ELECTRICAL 0x0A +#define ERROR_STATUS1_FIRMWARE 0x0E +#define ERROR_STATUS1_OTHER 0x0F + +/* Error recovery conditions */ +#define ERROR_STATUS2_AUTO 0x00 +#define ERROR_STATUS2_RELOAD_PAPER 0x01 +#define ERROR_STATUS2_RELOAD_RIBBON 0x02 +#define ERROR_STATUS2_CHANGE_BOTH 0x03 +#define ERROR_STATUS2_CHANGE_ONE 0x04 +#define ERROR_STATUS2_CLOSEUNIT 0x05 +#define ERROR_STATUS2_ATTACHSTRIPBIN 0x06 +#define ERROR_STATUS2_CLEARJAM 0x07 +#define ERROR_STATUS2_CHECKRIBBON 0x08 +#define ERROR_STATUS2_OPENCLOSEUNIT 0x0A +#define ERROR_STATUS2_POWEROFF 0x0F + +struct mitsu70x_status_deck { + uint8_t mecha_status[2]; + uint8_t temperature; + uint8_t error_status[3]; + uint8_t rsvd_a[10]; + + uint8_t media_brand; + uint8_t media_type; + uint8_t rsvd_b[2]; + uint16_t capacity; /* media capacity */ + uint16_t remain; /* media remaining */ + uint8_t rsvd_c[2]; + + uint16_t rsvd_d; + uint16_t prints; /* lifetime prints on deck? */ + uint16_t rsvd_e[17]; +} __attribute__((packed)); + +struct mitsu70x_status_ver { + char ver[6]; + uint16_t checksum; /* Presumably BE */ +} __attribute__((packed)); + +struct mitsu70x_printerstatus_resp { + uint8_t hdr[4]; + uint8_t unk[36]; + int16_t model[6]; /* LE, UTF-16 */ + int16_t serno[6]; /* LE, UTF-16 */ + struct mitsu70x_status_ver vers[7]; // components are 'LMFTR??' + uint8_t null[8]; + struct mitsu70x_status_deck lower; + struct mitsu70x_status_deck upper; +} __attribute__((packed)); + +struct mitsu70x_memorystatus_resp { + uint8_t hdr[3]; + uint8_t memory; + uint8_t size; + uint8_t rsvd; +} __attribute__((packed)); + +struct mitsu70x_hdr { + uint8_t hdr[4]; /* 1b 5a 54 XX */ + uint16_t jobid; + uint8_t zero0[10]; + + uint16_t cols; + uint16_t rows; + uint16_t lamcols; + uint16_t lamrows; + uint8_t speed; + uint8_t zero1[7]; + + uint8_t deck; /* 0 = default, 1 = lower, 2 = upper */ + uint8_t zero2[7]; + uint8_t laminate; /* 00 == on, 01 == off */ + uint8_t laminate_mode; + uint8_t zero3[6]; + + uint8_t multicut; + uint8_t zero4[15]; + + uint8_t pad[448]; +} __attribute__((packed)); + +#ifdef ENABLE_CORRTABLES +/* Correction data definitions */ +#define CORRDATA_DEF +struct mitsu70x_corrdata { + uint16_t liney[2730]; + uint16_t linem[2730]; + uint16_t linec[2730]; + uint16_t gnmby[256]; // B->Y conversion matrix + uint16_t gnmgm[256]; // G->M conversion matrix + uint16_t gnmrc[256]; // R->C conversion matrix + double fm[256]; + double ksp[128]; + double ksm[128]; + double osp[128]; + double osm[128]; + double kp[11]; + double km[11]; + double hk[4]; + uint16_t speed[3]; + double fh[5]; /* only 4 in length on D70 Normal/Superfine */ + double shk[72]; + double uh[101]; + uint16_t rolk[13]; /* Missing on D70x family */ + uint32_t rev[76]; /* Missing on D70x and ASK300 */ +}; + +struct mitsu70x_corrdatalens { + size_t liney; + size_t linem; + size_t linec; + size_t gnmby; + size_t gnmgm; + size_t gnmrc; + size_t fm; + size_t ksp; + size_t ksm; + size_t osp; + size_t osm; + size_t kp; + size_t km; + size_t hk; + size_t speed; + size_t fh; + size_t shk; + size_t uh; + size_t rolk; + size_t rev; +}; + +#include "D70/CPD70N01.h" // Normal/Fine +#include "D70/CPD70S01.h" // Superfine +#include "D70/CPD70U01.h" // Ultrafine +//#include "D70/CPD80E01.h" // ??? +#include "D70/CPD80N01.h" // Normal/Fine +#include "D70/CPD80S01.h" // Superfine +#include "D70/CPD80U01.h" // Ultrafine +#include "D70/ASK300T1.h" // Normal/Fine +#include "D70/ASK300T3.h" // Superfine/Ultrafine +#include "D70/CPS60T01.h" // Normal/Fine +#include "D70/CPS60T03.h" // Superfine/Ultrafine +#include "D70/EK305T01.h" // Normal/Fine +#include "D70/EK305T03.h" // Superfine/Ultrafine +#endif + +/* Error dumps, etc */ + +static char *mitsu70x_mechastatus(uint8_t *sts) +{ + switch(sts[0]) { + case MECHA_STATUS_INIT: + return "Initializing"; + case MECHA_STATUS_FEED: + return "Paper Feeding/Cutting"; + case MECHA_STATUS_LOAD: + return "Media Loading"; + case MECHA_STATUS_PRINT: + return "Printing"; + case MECHA_STATUS_IDLE: + return "Idle"; + default: + break; + } + return "Unknown Mechanical Status"; +} + +static char *mitsu70x_jobstatuses(uint8_t *sts) +{ + switch(sts[0]) { + case JOB_STATUS0_NONE: + return "No Job"; + case JOB_STATUS0_DATA: + return "Data transfer"; + case JOB_STATUS0_QUEUE: + return "Queued for printing"; + case JOB_STATUS0_PRINT: + switch(sts[1]) { + case JOB_STATUS1_PRINT_MEDIALOAD: + return "Media loading"; + case JOB_STATUS1_PRINT_PRE_Y: + return "Waiting to print yellow plane"; + case JOB_STATUS1_PRINT_Y: + return "Printing yellow plane"; + case JOB_STATUS1_PRINT_PRE_M: + return "Waiting to print magenta plane"; + case JOB_STATUS1_PRINT_M: + return "Printing magenta plane"; + case JOB_STATUS1_PRINT_PRE_C: + return "Waiting to print cyan plane"; + case JOB_STATUS1_PRINT_C: + return "Printing cyan plane"; + case JOB_STATUS1_PRINT_PRE_OC: + return "Waiting to laminate page"; + case JOB_STATUS1_PRINT_OC: + return "Laminating page"; + case JOB_STATUS1_PRINT_EJECT: + return "Ejecting page"; + default: + return "Unknown 'Print' status1\n"; + } + break; + case JOB_STATUS0_ASSIGN: + return "Unknown 'Assignment' status1\n"; + case JOB_STATUS0_END: + switch(sts[1]) { + case JOB_STATUS1_END_OK: + return "Normal End"; + case JOB_STATUS1_END_HEADER: + case JOB_STATUS1_END_PRINT: + switch(sts[2]) { + case JOB_STATUS2_END_PRINT_MEDIA: + return "Incorrect mediasize"; + case JOB_STATUS2_END_PRINT_PREVERR: + return "Previous job terminated abnormally"; + default: + return "Unknown 'End Print' status2"; + } + break; + case JOB_STATUS1_END_INTERRUPT: + switch(sts[2]) { + case JOB_STATUS2_END_INT_TIMEOUT: + return "Timeout"; + case JOB_STATUS2_END_INT_CANCEL: + return "Job cancelled"; + case JOB_STATUS2_END_INT_DISCON: + return "Printer disconnected"; + default: + return "Unknown 'End Print' status2"; + } + break; + default: + if (sts[1] >= 0x10 && sts[1] <= 0x7f) + return "Mechanical Error"; + else + return "Unknown 'End' status1"; + } + break; + default: + break; + } + + return "Unknown status0"; +} + +static char *mitsu70x_errorclass(uint8_t *err) +{ + switch(err[1]) { + case ERROR_STATUS1_PAPER: + return "Paper"; + case ERROR_STATUS1_RIBBON: + return "Ribbon"; + case ERROR_STATUS1_SETTING: + return "Job settings"; + case ERROR_STATUS1_OPEN: + return "Cover open"; + case ERROR_STATUS1_NOSTRIPBIN: + return "No cut bin"; + case ERROR_STATUS1_PAPERJAM: + return "Paper jam"; + case ERROR_STATUS1_RIBBONSYS: + return "Ribbon system"; + case ERROR_STATUS1_MECHANICAL: + return "Mechanical"; + case ERROR_STATUS1_ELECTRICAL: + return "Electrical"; + case ERROR_STATUS1_FIRMWARE: + return "Firmware"; + case ERROR_STATUS1_OTHER: + return "Other"; + default: + break; + } + return "Unknown error class"; +} + +static char *mitsu70x_errorrecovery(uint8_t *err) +{ + switch(err[1]) { + case ERROR_STATUS2_AUTO: + return "Automatic recovery"; + case ERROR_STATUS2_RELOAD_PAPER: + return "Reload or change paper"; + case ERROR_STATUS2_RELOAD_RIBBON: + return "Reload or change ribbon"; + case ERROR_STATUS2_CHANGE_BOTH: + return "Change paper and ribbon"; + case ERROR_STATUS2_CHANGE_ONE: + return "Change paper or ribbon"; + case ERROR_STATUS2_CLOSEUNIT: + return "Close printer"; + case ERROR_STATUS2_ATTACHSTRIPBIN: + return "Attach Strip Bin"; + case ERROR_STATUS2_CLEARJAM: + return "Remove and reload paper"; + case ERROR_STATUS2_CHECKRIBBON: + return "Check ribbon and reload paper"; + case ERROR_STATUS2_OPENCLOSEUNIT: + return "Open then close printer"; + case ERROR_STATUS2_POWEROFF: + return "Power-cycle printer"; + default: + break; + } + return "Unknown recovery"; +} + +static char *mitsu70x_errors(uint8_t *err) +{ + switch(err[0]) { + case ERROR_STATUS0_NOSTRIPBIN: + return "Strip bin not attached"; + case ERROR_STATUS0_NORIBBON: + return "No ribbon detected"; + case ERROR_STATUS0_NOPAPER: + return "No paper loaded"; + case ERROR_STATUS0_MEDIAMISMATCH: + return "Ribbon/Paper mismatch"; + case ERROR_STATUS0_RIBBONCNTEND: + return "Ribbon count end"; + case ERROR_STATUS0_BADRIBBON: + return "Illegal Ribbon"; + case ERROR_STATUS0_BADJOBPARAM: + return "Job does not match loaded media"; + case ERROR_STATUS0_PAPEREND: + return "End of paper detected"; + case ERROR_STATUS0_RIBBONEND: + return "End of ribbon detected"; + case ERROR_STATUS0_DOOROPEN_IDLE: + case ERROR_STATUS0_DOOROPEN_PRNT: + return "Printer door open"; + case ERROR_STATUS0_POWEROFF: + return "Printer powered off"; // nonsense.. + case ERROR_STATUS0_RIBBONSKIP1: + case ERROR_STATUS0_RIBBONSKIP2: + return "Ribbon skipped"; + case ERROR_STATUS0_RIBBONJAM: + return "Ribbon stuck to paper"; + case ERROR_STATUS0_RFID: + return "RFID read error"; + case ERROR_STATUS0_FLASH: + return "FLASH read error"; + case ERROR_STATUS0_EEPROM: + return "EEPROM read error"; + case ERROR_STATUS0_PREHEAT: + return "Preheating unit time out"; + case ERROR_STATUS0_MDASTATE: + return "Unknown MDA state"; + case ERROR_STATUS0_PSUFANLOCKED: + return "Power supply fan locked up"; + default: + break; + } + + if (err[0] >= ERROR_STATUS0_RIBBON_OTHER && + err[0] < ERROR_STATUS0_PAPER_JAM) { + return "Unknown ribbon error"; + // XXX use err[1]/err[2] codes? + } + if (err[0] >= ERROR_STATUS0_PAPER_JAM && + err[0] < ERROR_STATUS0_MECHANICAL) { + return "Paper jam"; + // XXX use err[1]/err[2] codes? + } + if (err[0] >= ERROR_STATUS0_MECHANICAL && + err[0] < ERROR_STATUS0_RFID) { + return "Unknown mechanical error"; + // XXX use err[1]/err[2] codes? + } + + return "Unknown error"; +} + +static const char *mitsu70x_media_types(uint8_t brand, uint8_t type) +{ + if (brand == 0xff && type == 0x02) + return "CKD746 (4x6)"; + else if (brand == 0xff && type == 0x0f) + return "CKD768 (6x8)"; + else if (brand == 0x6c && type == 0x8f) + return "Kodak 6R (6x8)"; + else if (brand == 0x61 && type == 0x8f) + return "CKK76R (6x8)"; + else + return "Unknown"; +} + +#define CMDBUF_LEN 512 +#define READBACK_LEN 256 + +static void *mitsu70x_init(void) +{ + struct mitsu70x_ctx *ctx = malloc(sizeof(struct mitsu70x_ctx)); + if (!ctx) { + ERROR("Memory Allocation Failure!\n"); + return NULL; + } + memset(ctx, 0, sizeof(struct mitsu70x_ctx)); + + return ctx; +} + +static void mitsu70x_attach(void *vctx, struct libusb_device_handle *dev, + uint8_t endp_up, uint8_t endp_down, uint8_t jobid) +{ + struct mitsu70x_ctx *ctx = vctx; + struct libusb_device *device; + struct libusb_device_descriptor desc; + + ctx->jobid = jobid; + if (!ctx->jobid) + jobid++; + + ctx->dev = dev; + ctx->endp_up = endp_up; + ctx->endp_down = endp_down; + + device = libusb_get_device(dev); + libusb_get_device_descriptor(device, &desc); + + ctx->type = lookup_printer_type(&mitsu70x_backend, + desc.idVendor, desc.idProduct); + + ctx->last_donor_l = ctx->last_donor_u = 65535;} + +static void mitsu70x_teardown(void *vctx) { + struct mitsu70x_ctx *ctx = vctx; + + if (!ctx) + return; + + if (ctx->databuf) + free(ctx->databuf); + free(ctx); +} + +static int mitsu70x_read_parse(void *vctx, int data_fd) { + struct mitsu70x_ctx *ctx = vctx; + int i, remain; + struct mitsu70x_hdr mhdr; + + if (!ctx) + return CUPS_BACKEND_FAILED; + + if (ctx->databuf) { + free(ctx->databuf); + ctx->databuf = NULL; + } + + ctx->matte = 0; + +repeat: + /* Read in initial header */ + remain = sizeof(mhdr); + while (remain > 0) { + i = read(data_fd, ((uint8_t*)&mhdr) + sizeof(mhdr) - remain, remain); + if (i == 0) + return CUPS_BACKEND_CANCEL; + if (i < 0) + return CUPS_BACKEND_CANCEL; + remain -= i; + } + + /* Skip over wakeup header if it's present. */ + if (mhdr.hdr[0] == 0x1b && + mhdr.hdr[1] == 0x45 && + mhdr.hdr[2] == 0x57 && + mhdr.hdr[3] == 0x55) { + goto repeat; + } + + /* Sanity check header */ + if (mhdr.hdr[0] != 0x1b && + mhdr.hdr[1] != 0x5a && + mhdr.hdr[2] != 0x54) { + ERROR("Unrecognized data format!\n"); + return CUPS_BACKEND_CANCEL; + } + +#ifdef ENABLE_CORRTABLES + ctx->raw_format = 1; // XXX until we define a new spool format for + // the data. Maybe reuse D90 header? + + /* Figure out the correction data table to use */ + if (ctx->type == P_MITSU_D70X) { + ctx->laminatefname = "D70MAT01.raw"; + ctx->lutfname = "CPD70L01.lut"; + + if (mhdr.speed == 3) { + ctx->corrdata = &CPD70S01_data; + ctx->corrdatalens = &CPD70S01_lengths; + } else if (mhdr.speed == 4) { + ctx->corrdata = &CPD70U01_data; + ctx->corrdatalens = &CPD70U01_lengths; + } else { + ctx->corrdata = &CPD70N01_data; + ctx->corrdatalens = &CPD70N01_lengths; + } + } else if (ctx->type == P_MITSU_D80) { + ctx->laminatefname = "D80MAT01.raw"; + ctx->lutfname = "CPD80L01.lut"; + + if (mhdr.speed == 3) { + ctx->corrdata = &CPD80S01_data; + ctx->corrdatalens = &CPD80S01_lengths; + } else if (mhdr.speed == 4) { + ctx->corrdata = &CPD80U01_data; + ctx->corrdatalens = &CPD80U01_lengths; + } else { + ctx->corrdata = &CPD80N01_data; + ctx->corrdatalens = &CPD80N01_lengths; + } + // XXX what about CPD80**E**01? + } else if (ctx->type == P_MITSU_K60) { + ctx->laminatefname = "S60MAT02.raw"; + ctx->lutfname = "CPS60L01.lut"; + + if (mhdr.speed == 3 || mhdr.speed == 4) { + ctx->corrdata = &CPS60T03_data; + ctx->corrdatalens = &CPS60T03_lengths; + } else { + ctx->corrdata = &CPS60T01_data; + ctx->corrdatalens = &CPS60T01_lengths; + } + + } else if (ctx->type == P_KODAK_305) { + ctx->laminatefname = "EK305MAT.raw"; // Same as K60 + ctx->lutfname = "EK305L01.lut"; + + if (mhdr.speed == 3 || mhdr.speed == 4) { + ctx->corrdata = &EK305T03_data; + ctx->corrdatalens = &EK305T03_lengths; + } else { + ctx->corrdata = &EK305T01_data; + ctx->corrdatalens = &EK305T01_lengths; + } + } else if (ctx->type == P_FUJI_ASK300) { + ctx->laminatefname = "ASK300M2.raw"; // Same as D70 + ctx->lutfname = "CPD70L01.lut"; // XXX guess! + + if (mhdr.speed == 3 || mhdr.speed == 4) { + ctx->corrdata = &ASK300T3_data; + ctx->corrdatalens = &ASK300T3_lengths; + } else { + ctx->corrdata = &ASK300T1_data; + ctx->corrdatalens = &ASK300T1_lengths; + } + } +#endif + + /* Work out printjob size */ + ctx->cols = be16_to_cpu(mhdr.cols); + ctx->rows = be16_to_cpu(mhdr.rows); + + remain = ctx->rows * ctx->cols * 2; + remain = (remain + 511) / 512 * 512; /* Round to nearest 512 bytes. */ + remain *= 3; /* One for each plane */ + + if (!mhdr.laminate && mhdr.laminate_mode) { + i = be16_to_cpu(mhdr.lamcols) * be16_to_cpu(mhdr.lamrows) * 2; + i = (i + 511) / 512 * 512; /* Round to nearest 512 bytes. */ + ctx->matte = i; + } + + ctx->databuf = malloc(sizeof(mhdr) + remain + ctx->matte); + if (!ctx->databuf) { + ERROR("Memory allocation failure!\n"); + return CUPS_BACKEND_FAILED; + } + + memcpy(ctx->databuf, &mhdr, sizeof(mhdr)); + ctx->datalen += sizeof(mhdr); + +#ifndef ENABLE_CORRTABLES + /* Read matte from spool... */ + remain += ctx->matte; +#endif + + /* Read in the spool data */ + while(remain) { + i = read(data_fd, ctx->databuf + ctx->datalen, remain); + if (i == 0) + return CUPS_BACKEND_CANCEL; + if (i < 0) + return CUPS_BACKEND_CANCEL; + ctx->datalen += i; + remain -= i; + } + +#ifdef ENABLE_CORRTABLES + /* Read matte from matte file */ + if (!ctx->raw_format && ctx->matte) { + int fd; + fd = open(ctx->laminatefname, O_RDONLY); + if (fd < 0) { + ERROR("Unable to open matte lamination data file '%s'\n", ctx->laminatefname); + return CUPS_BACKEND_CANCEL; + } + remain = ctx->matte; + while (remain) { + i = read(fd, ctx->databuf + ctx->datalen, remain); + if (i == 0) + return CUPS_BACKEND_CANCEL; + if (i < 0) + return CUPS_BACKEND_CANCEL; + ctx->datalen += i; + remain -= i; + } + } +#endif + + return CUPS_BACKEND_OK; +} + +static int mitsu70x_get_jobstatus(struct mitsu70x_ctx *ctx, struct mitsu70x_jobstatus *resp, uint16_t jobid) +{ + uint8_t cmdbuf[CMDBUF_LEN]; + int num, ret; + + /* Send Printer Query */ + memset(cmdbuf, 0, CMDBUF_LEN); + cmdbuf[0] = 0x1b; + cmdbuf[1] = 0x56; + cmdbuf[2] = 0x31; + cmdbuf[3] = 0x30; // XXX 30 == specific, 31 = "all" + + cmdbuf[4] = (jobid >> 8) & 0xff; + cmdbuf[5] = jobid & 0xff; + + if ((ret = send_data(ctx->dev, ctx->endp_down, + cmdbuf, 6))) + return ret; + + memset(resp, 0, sizeof(*resp)); + + ret = read_data(ctx->dev, ctx->endp_up, + (uint8_t*) resp, sizeof(*resp), &num); + + if (ret < 0) + return ret; + if (num != sizeof(*resp)) { + ERROR("Short Read! (%d/%d)\n", num, (int)sizeof(*resp)); + return 4; + } + + return 0; +} + +#ifdef BROKEN_ON_EK305 // XXX broken on EK305 +static int mitsu70x_get_jobs(struct mitsu70x_ctx *ctx, struct mitsu70x_jobs *resp) +{ + uint8_t cmdbuf[CMDBUF_LEN]; + int num, ret; + + /* Send Printer Query */ + memset(cmdbuf, 0, CMDBUF_LEN); + cmdbuf[0] = 0x1b; + cmdbuf[1] = 0x56; + cmdbuf[2] = 0x31; + cmdbuf[3] = 0x31; + cmdbuf[4] = 0x00; + cmdbuf[5] = 0x00; + + if ((ret = send_data(ctx->dev, ctx->endp_down, + cmdbuf, 6))) + return ret; + + memset(resp, 0, sizeof(*resp)); + + ret = read_data(ctx->dev, ctx->endp_up, + (uint8_t*) resp, sizeof(*resp), &num); + + if (ret < 0) + return ret; + if (num != sizeof(*resp)) { + ERROR("Short Read! (%d/%d)\n", num, (int)sizeof(*resp)); + return 4; + } + + return 0; +} +#endif + +static int mitsu70x_get_memorystatus(struct mitsu70x_ctx *ctx, struct mitsu70x_memorystatus_resp *resp) +{ + uint8_t cmdbuf[CMDBUF_LEN]; + + uint16_t tmp; + + int num; + int ret; + + memset(cmdbuf, 0, CMDBUF_LEN); + cmdbuf[0] = 0x1b; + cmdbuf[1] = 0x56; + cmdbuf[2] = 0x33; + cmdbuf[3] = 0x00; + tmp = cpu_to_be16(ctx->cols); + memcpy(cmdbuf + 4, &tmp, 2); + tmp = cpu_to_be16(ctx->rows); + memcpy(cmdbuf + 6, &tmp, 2); + cmdbuf[8] = ctx->matte ? 0x80 : 0x00; + cmdbuf[9] = 0x00; + + if ((ret = send_data(ctx->dev, ctx->endp_down, + cmdbuf, 10))) + return CUPS_BACKEND_FAILED; + + /* Read in the printer status */ + ret = read_data(ctx->dev, ctx->endp_up, + (uint8_t*) resp, sizeof(*resp), &num); + if (ret < 0) + return CUPS_BACKEND_FAILED; + + if (num != sizeof(*resp)) { + ERROR("Short Read! (%d/%d)\n", num, (int)sizeof(*resp)); + return CUPS_BACKEND_FAILED; + } + + /* Make sure response is sane */ + if (resp->hdr[0] != 0xe4 || + resp->hdr[1] != 0x56 || + resp->hdr[2] != 0x33) { + ERROR("Unknown response from printer\n"); + return CUPS_BACKEND_FAILED; + } + + return 0; +} + + +static int mitsu70x_get_printerstatus(struct mitsu70x_ctx *ctx, struct mitsu70x_printerstatus_resp *resp) +{ + uint8_t cmdbuf[CMDBUF_LEN]; + int num, ret; + + /* Send Printer Query */ + memset(cmdbuf, 0, CMDBUF_LEN); + cmdbuf[0] = 0x1b; + cmdbuf[1] = 0x56; + cmdbuf[2] = 0x32; + cmdbuf[3] = 0x30; + if ((ret = send_data(ctx->dev, ctx->endp_down, + cmdbuf, 4))) + return ret; + memset(resp, 0, sizeof(*resp)); + ret = read_data(ctx->dev, ctx->endp_up, + (uint8_t*) resp, sizeof(*resp), &num); + + if (ret < 0) + return ret; + if (num != sizeof(*resp)) { + ERROR("Short Read! (%d/%d)\n", num, (int)sizeof(*resp)); + return 4; + } + + return 0; +} + +static int mitsu70x_cancel_job(struct mitsu70x_ctx *ctx, uint16_t jobid) +{ + uint8_t cmdbuf[4]; + int ret; + + /* Send Job cancel. No response. */ + memset(cmdbuf, 0, 4); + cmdbuf[0] = 0x1b; + cmdbuf[1] = 0x44; + cmdbuf[2] = (jobid >> 8) & 0xff; + cmdbuf[3] = jobid & 0xffl; + if ((ret = send_data(ctx->dev, ctx->endp_down, + cmdbuf, 4))) + return ret; + + return 0; +} + +static int mitsu70x_set_sleeptime(struct mitsu70x_ctx *ctx, uint8_t time) +{ + uint8_t cmdbuf[4]; + int ret; + + /* Send Job cancel. No response. */ + memset(cmdbuf, 0, 4); + cmdbuf[0] = 0x1b; + cmdbuf[1] = 0x53; + cmdbuf[2] = 0x53; + cmdbuf[3] = time; + + if ((ret = send_data(ctx->dev, ctx->endp_down, + cmdbuf, 4))) + return ret; + + return 0; +} + +static int mitsu70x_main_loop(void *vctx, int copies) { + struct mitsu70x_ctx *ctx = vctx; + struct mitsu70x_jobstatus jobstatus; + struct mitsu70x_printerstatus_resp resp; +#ifdef BROKEN_ON_EK305 + struct mitsu70x_jobs jobs; +#endif + struct mitsu70x_hdr *hdr; + + int ret; + + if (!ctx) + return CUPS_BACKEND_FAILED; + + hdr = (struct mitsu70x_hdr*) ctx->databuf; + + INFO("Waiting for printer idle...\n"); + +top: + /* Query job status for jobid 0 (global) */ + ret = mitsu70x_get_jobstatus(ctx, &jobstatus, 0x0000); + if (ret) + return CUPS_BACKEND_FAILED; + + /* Make sure we're awake! */ + if (jobstatus.power) { + uint8_t buf[512]; + + memset(buf, 0, sizeof(buf)); + buf[0] = 0x1b; + buf[1] = 0x45; + buf[2] = 0x57; + buf[3] = 0x55; + + INFO("Waking up printer...\n"); + if ((ret = send_data(ctx->dev, ctx->endp_down, + buf, sizeof(buf)))) + return CUPS_BACKEND_FAILED; + sleep(1); + goto top; + } + + /* Make sure temperature is sane */ + if (jobstatus.temperature == TEMPERATURE_COOLING) { + INFO("Printer cooling down...\n"); + sleep(1); + goto top; + } + + /* See if we hit a printer error. */ + if (jobstatus.error_status[0]) { + ERROR("%s/%s -> %s: %02x/%02x/%02x\n", + mitsu70x_errorclass(jobstatus.error_status), + mitsu70x_errors(jobstatus.error_status), + mitsu70x_errorrecovery(jobstatus.error_status), + jobstatus.error_status[0], + jobstatus.error_status[1], + jobstatus.error_status[2]); + return CUPS_BACKEND_STOP; + } + + if (ctx->num_decks) + goto skip_status; + + /* Tell CUPS about the consumables we report */ + ret = mitsu70x_get_printerstatus(ctx, &resp); + if (ret) + return CUPS_BACKEND_FAILED; + + if (resp.upper.mecha_status[0] != MECHA_STATUS_INIT) + ctx->num_decks = 2; + else + ctx->num_decks = 1; + + if (ctx->type == P_MITSU_D70X && + ctx->num_decks == 2) { + ATTR("marker-colors=#00FFFF#FF00FF#FFFF00,#00FFFF#FF00FF#FFFF00\n"); + ATTR("marker-high-levels=100,100\n"); + ATTR("marker-low-levels=10,10\n"); + ATTR("marker-names='\"%s\"','\"%s\"'\n", + mitsu70x_media_types(resp.lower.media_brand, resp.lower.media_type), + mitsu70x_media_types(resp.upper.media_brand, resp.upper.media_type)); + ATTR("marker-types=ribbonWax,ribbonWax\n"); + } else { + ATTR("marker-colors=#00FFFF#FF00FF#FFFF00\n"); + ATTR("marker-high-levels=100\n"); + ATTR("marker-low-levels=10\n"); + ATTR("marker-names='%s'\n", + mitsu70x_media_types(resp.lower.media_brand, resp.lower.media_type)); + ATTR("marker-types=ribbonWax\n"); + } + +skip_status: + /* Perform memory status query */ + { + struct mitsu70x_memorystatus_resp memory; + INFO("Checking Memory availability\n"); + + ret = mitsu70x_get_memorystatus(ctx, &memory); + if (ret) + return CUPS_BACKEND_FAILED; + + /* Check size is sane */ + if (memory.size || memory.memory == 0xff) { + ERROR("Unsupported print size!\n"); + return CUPS_BACKEND_CANCEL; + } + if (memory.memory) { + INFO("Printer buffers full, retrying!\n"); + sleep(1); + goto top; + } + } + +#ifdef BROKEN_ON_EK305 // XXX broken on K305, at least. + /* Make sure we don't have any jobid collisions */ + ret = mitsu70x_get_jobs(ctx, &jobs); + if (ret) + return CUPS_BACKEND_FAILED; + + while (ctx->jobid == be16_to_cpu(jobs.jobid_0) || + ctx->jobid == be16_to_cpu(jobs.jobid_1)) { + ctx->jobid++; + if (!ctx->jobid) + ctx->jobid++; + } +#endif + + /* Set jobid */ + hdr->jobid = cpu_to_be16(ctx->jobid); + + /* Set deck */ + if (ctx->type == P_MITSU_D70X) { + hdr->deck = 0; /* D70 use automatic deck selection */ + /* XXX alternatively route it based on state and media? */ + } else { + hdr->deck = 1; /* All others only have a "lower" deck. */ + } + + /* Matte operation requires Ultrafine/superfine */ + if (ctx->matte) { + if (ctx->type != P_MITSU_D70X) { + hdr->speed = 0x04; /* Force UltraFine */ + } else { + hdr->speed = 0x03; /* Force SuperFine */ + } + } + + /* Any other fixups? */ +#if 1 // XXX is this actually needed? + if ((ctx->type == P_MITSU_K60 || ctx->type == P_KODAK_305) && + ctx->cols == 0x0748 && + ctx->rows == 0x04c2) { + hdr->multicut = 1; // XXX only if print count even? + } +#endif + + /* We're clear to send data over! */ + INFO("Sending Print Job (internal id %u)\n", ctx->jobid); + + if ((ret = send_data(ctx->dev, ctx->endp_down, + ctx->databuf, + sizeof(struct mitsu70x_hdr)))) + return CUPS_BACKEND_FAILED; + + { + /* K60 and 305 need data sent in 256K chunks, but the first + chunk needs to subtract the length of the 512-byte header */ + + // XXX is this special case actually needed? + int chunk = 256*1024 - sizeof(struct mitsu70x_hdr); + int sent = 512; + while (chunk > 0) { + if ((ret = send_data(ctx->dev, ctx->endp_down, + ctx->databuf + sent, chunk))) + return CUPS_BACKEND_FAILED; + sent += chunk; + chunk = ctx->datalen - sent; + if (chunk > 256*1024) + chunk = 256*1024; + } + } + + /* Then wait for completion, if so desired.. */ + INFO("Waiting for printer to acknowledge completion\n"); + + do { + uint16_t donor_u, donor_l; + + sleep(1); + + ret = mitsu70x_get_printerstatus(ctx, &resp); + if (ret) + return CUPS_BACKEND_FAILED; + + donor_l = be16_to_cpu(resp.lower.remain) * 100 / be16_to_cpu(resp.lower.capacity); + + if (ctx->type == P_MITSU_D70X && + ctx->num_decks == 2) { + donor_u = be16_to_cpu(resp.upper.remain) * 100 / be16_to_cpu(resp.upper.capacity); + if (donor_l != ctx->last_donor_l || + donor_u != ctx->last_donor_u) { + ctx->last_donor_l = donor_l; + ctx->last_donor_u = donor_u; + ATTR("marker-levels=%d,%d\n", donor_l, donor_u); + } + } else { + if (donor_l != ctx->last_donor_l) { + ctx->last_donor_l = donor_l; + ATTR("marker-levels=%d\n", donor_l); + } + } + + /* Query job status for our used jobid */ + ret = mitsu70x_get_jobstatus(ctx, &jobstatus, ctx->jobid); + if (ret) + return CUPS_BACKEND_FAILED; + + /* See if we hit a printer error. */ + if (jobstatus.error_status[0]) { + ERROR("%s/%s -> %s: %02x/%02x/%02x\n", + mitsu70x_errorclass(jobstatus.error_status), + mitsu70x_errors(jobstatus.error_status), + mitsu70x_errorrecovery(jobstatus.error_status), + jobstatus.error_status[0], + jobstatus.error_status[1], + jobstatus.error_status[2]); + return CUPS_BACKEND_STOP; + } + + INFO("%s: %x/%x/%x/%x\n", + mitsu70x_jobstatuses(jobstatus.job_status), + jobstatus.job_status[0], + jobstatus.job_status[1], + jobstatus.job_status[2], + jobstatus.job_status[3]); + if (jobstatus.job_status[0] == JOB_STATUS0_END) { + if (jobstatus.job_status[1] || + jobstatus.job_status[2] || + jobstatus.job_status[3]) { + ERROR("Abnormal exit: %02x/%02x/%02x\n", + jobstatus.error_status[0], + jobstatus.error_status[1], + jobstatus.error_status[2]); + return CUPS_BACKEND_STOP; + } + /* Job complete */ + break; + } + + if (fast_return) { + INFO("Fast return mode enabled.\n"); + break; + } + } while(1); + + /* Clean up */ + if (terminate) + copies = 1; + + INFO("Print complete (%d copies remaining)\n", copies - 1); + + if (copies && --copies) { + goto top; + } + + return CUPS_BACKEND_OK; +} + +static void mitsu70x_dump_printerstatus(struct mitsu70x_printerstatus_resp *resp) +{ + unsigned int i; + + INFO("Model : "); + for (i = 0 ; i < 6 ; i++) { + DEBUG2("%c", le16_to_cpu(resp->model[i]) & 0x7f); + } + DEBUG2("\n"); + INFO("Serial Number : "); + for (i = 0 ; i < 6 ; i++) { + DEBUG2("%c", le16_to_cpu(resp->serno[i]) & 0x7f); + } + DEBUG2("\n"); + for (i = 0 ; i < 7 ; i++) { + char buf[7]; + if (resp->vers[i].ver[5] == '@') /* "DUMMY@" */ + continue; + memcpy(buf, resp->vers[i].ver, 6); + buf[6] = 0; + INFO("Component #%u ID: %s (checksum %04x)\n", + i, buf, be16_to_cpu(resp->vers[i].checksum)); + } + + INFO("Lower Mechanical Status: %s\n", + mitsu70x_mechastatus(resp->lower.mecha_status)); + if (resp->lower.error_status[0]) { + INFO("Lower Error Status: %s/%s -> %s\n", + mitsu70x_errorclass(resp->lower.error_status), + mitsu70x_errors(resp->lower.error_status), + mitsu70x_errorrecovery(resp->lower.error_status)); + } + INFO("Lower Media type: %s (%02x/%02x)\n", + mitsu70x_media_types(resp->lower.media_brand, resp->lower.media_type), + resp->lower.media_brand, + resp->lower.media_type); + INFO("Lower Prints remaining: %03d/%03d\n", + be16_to_cpu(resp->lower.remain), + be16_to_cpu(resp->lower.capacity)); + + if (resp->upper.mecha_status[0] != MECHA_STATUS_INIT) { + INFO("Upper Mechanical Status: %s\n", + mitsu70x_mechastatus(resp->upper.mecha_status)); + if (resp->upper.error_status[0]) { + INFO("Upper Error Status: %s/%s -> %s\n", + mitsu70x_errorclass(resp->upper.error_status), + mitsu70x_errors(resp->upper.error_status), + mitsu70x_errorrecovery(resp->upper.error_status)); + } + INFO("Upper Media type: %s (%02x/%02x)\n", + mitsu70x_media_types(resp->upper.media_brand, resp->upper.media_type), + resp->upper.media_brand, + resp->upper.media_type); + INFO("Upper Prints remaining: %03d/%03d\n", + be16_to_cpu(resp->upper.remain), + be16_to_cpu(resp->upper.capacity)); + } +} + +static int mitsu70x_query_status(struct mitsu70x_ctx *ctx) +{ + struct mitsu70x_printerstatus_resp resp; +#ifdef BROKEN_ON_EK305 + struct mitsu70x_jobs jobs; +#endif + int ret; + + ret = mitsu70x_get_printerstatus(ctx, &resp); + if (!ret) + mitsu70x_dump_printerstatus(&resp); + +#ifdef BROKEN_ON_EK305 // XXX broken on EK305, at least + ret = mitsu70x_get_jobs(ctx, &jobs); + if (!ret) { + INFO("JOB0 ID : %06u\n", jobs.jobid_0); + INFO("JOB0 status : %s\n", mitsu70x_jobstatuses(jobs.job0_status)); + INFO("JOB1 ID : %06u\n", jobs.jobid_1); + INFO("JOB1 status : %s\n", mitsu70x_jobstatuses(jobs.job1_status)); + // XXX are there more? + } +#endif + + return ret; +} + +static int mitsu70x_query_serno(struct libusb_device_handle *dev, uint8_t endp_up, uint8_t endp_down, char *buf, int buf_len) +{ + int ret, i; + struct mitsu70x_printerstatus_resp resp = { .hdr = { 0 } }; + + struct mitsu70x_ctx ctx = { + .dev = dev, + .endp_up = endp_up, + .endp_down = endp_down, + }; + + ret = mitsu70x_get_printerstatus(&ctx, &resp); + + if (buf_len > 6) /* Will we ever have a buffer under 6 bytes? */ + buf_len = 6; + + for (i = 0 ; i < buf_len ; i++) { + *buf++ = le16_to_cpu(resp.serno[i]) & 0x7f; + } + *buf = 0; /* Null-terminate the returned string */ + + return ret; +} + + +static void mitsu70x_cmdline(void) +{ + DEBUG("\t\t[ -s ] # Query status\n"); + DEBUG("\t\t[ -f ] # Use fast return mode\n"); + DEBUG("\t\t[ -k num ] # Set standby time (1-60 minutes, 0 disables)\n"); + DEBUG("\t\t[ -X jobid ] # Abort a printjob\n");} + +static int mitsu70x_cmdline_arg(void *vctx, int argc, char **argv) +{ + struct mitsu70x_ctx *ctx = vctx; + int i, j = 0; + + if (!ctx) + return -1; + + while ((i = getopt(argc, argv, GETOPT_LIST_GLOBAL "sX:k:")) >= 0) { + switch(i) { + GETOPT_PROCESS_GLOBAL + case 'k': + j = mitsu70x_set_sleeptime(ctx, atoi(optarg)); + break; + case 's': + j = mitsu70x_query_status(ctx); + break; + case 'X': + j = mitsu70x_cancel_job(ctx, atoi(optarg)); + break; + default: + break; /* Ignore completely */ + } + + if (j) return j; + } + + return 0; +} + + +/* Exported */ +struct dyesub_backend mitsu70x_backend = { + .name = "Mitsubishi CP-D70/D707/K60/D80", + .version = "0.41WIP", + .uri_prefix = "mitsu70x", + .cmdline_usage = mitsu70x_cmdline, + .cmdline_arg = mitsu70x_cmdline_arg, + .init = mitsu70x_init, + .attach = mitsu70x_attach, + .teardown = mitsu70x_teardown, + .read_parse = mitsu70x_read_parse, + .main_loop = mitsu70x_main_loop, + .query_serno = mitsu70x_query_serno, + .devices = { + { USB_VID_MITSU, USB_PID_MITSU_D70X, P_MITSU_D70X, ""}, + { USB_VID_MITSU, USB_PID_MITSU_K60, P_MITSU_K60, ""}, +// { USB_VID_MITSU, USB_PID_MITSU_D80, P_MITSU_D80, ""}, + { USB_VID_KODAK, USB_PID_KODAK305, P_KODAK_305, ""}, +// { USB_VID_FUJIFILM, USB_PID_FUJI_ASK300, P_FUJI_ASK300, ""}, + { 0, 0, 0, ""} + } +}; + +/* Mitsubish CP-D70DW/CP-D707DW/CP-K60DW-S/CP-D80DW/Kodak 305 data format + + Spool file consists of two headers followed by three image planes + and an optional lamination data plane. All blocks are rounded up to + a 512-byte boundary. + + All multi-byte numbers are big endian, ie MSB first. + + Header 1: (Init) (AKA Wake Up) + + 1b 45 57 55 00 00 00 00 00 00 00 00 00 00 00 00 + (padded by NULLs to a 512-byte boundary) + + Header 2: (Header) + + 1b 5a 54 PP JJ JJ 00 00 00 00 00 00 00 00 00 00 + XX XX YY YY QQ QQ ZZ ZZ SS 00 00 00 00 00 00 00 + UU 00 00 00 00 00 00 00 00 TT 00 00 00 00 00 00 + RR 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + + (padded by NULLs to a 512-byte boundary) + + PP == 0x01 on D70x/D80, 0x02 on K60, 0x90 on K305 + JJ JJ == Job ID, can leave at 00 00 + XX XX == columns + YY YY == rows + QQ QQ == lamination columns (equal to XX XX) + ZZ ZZ == lamination rows (YY YY + 12) + SS == Print mode: 00 = Fine, 03 = SuperFine (D70x/D80 only), 04 = UltraFine + (Matte requires Superfine or Ultrafine) + UU == 00 = Auto, 01 = Lower Deck (required for !D70x), 02 = Upper Deck + TT == lamination: 00 glossy, 02 matte. + RR == 00 (normal), 01 = (Double-cut 4x6), 05 = (double-cut 2x6) + + Data planes: + 16-bit data, rounded up to 512-byte block (XX * YY * 2 bytes) + + Lamination plane: (only present if QQ and ZZ are nonzero) + 16-byte data, rounded up to 512-byte block (QQ * ZZ * 2 bytes) + + ******************************************************************** + + Command format: + + -> 1b 56 32 30 + <- [256 byte payload] + + PRINTER STATUS + + e4 56 32 30 00 00 00 00 00 00 00 00 00 00 00 00 .V20............ + 00 00 00 00 00 00 00 00 00 00 00 80 00 00 00 00 ................ + 44 80 00 00 5f 00 00 3d 43 00 50 00 44 00 37 00 D..._..=C.P.D.7. + 30 00 44 00 30 00 30 00 31 00 31 00 31 00 37 00 0.D.0.0.1.1.1.7. + 33 31 36 54 31 33 21 a3 33 31 35 42 31 32 f5 e5 316T13!.315B12.. + 33 31 39 42 31 31 a3 fb 33 31 38 45 31 32 50 0d 319B11..318E12P. + 33 31 37 41 32 32 a3 82 44 55 4d 4d 59 40 00 00 317A22..DUMMY@.. + 44 55 4d 4d 59 40 00 00 00 00 00 00 00 00 00 00 DUMMY@.......... + + LOWER DECK STATUS + + 00 00 00 00 00 00 02 04 3f 00 00 04 96 00 00 00 MM MM: media capacity + ff 0f 01 00 MM MM NN NN 00 00 00 00 05 28 75 80 NN NN: prints remaining + 80 00 80 00 80 00 80 00 80 00 80 00 80 00 80 00 + 80 00 80 00 80 00 80 00 80 00 80 00 80 00 80 00 + + alt (some sort of error state) + + 00 00 00 0a 05 05 01 d5 38 00 00 00 14 00 00 00 + ff ff ff ff ff ff ff ff ff ff 00 00 00 27 72 80 + 80 00 80 00 80 00 80 00 80 00 80 00 80 00 80 00 + 80 00 80 00 80 00 80 00 80 00 80 00 80 00 80 00 + + UPPER DECK STATUS (if present) + + XX XX 00 00 00 00 01 ee 3d 00 00 06 39 00 00 00 MM MM: media capacity + ff 02 00 00 MM MM NN NN 00 00 00 00 06 67 78 00 NN NN: prints remaining + 80 00 80 00 80 00 80 00 80 00 80 00 80 00 80 00 XX XX: 0x80 00 if no deck + 80 00 80 00 80 00 80 00 80 00 80 00 80 00 80 00 + + alt (no deck present) + + 80 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 00 + ff ff ff ff ff ff ff ff ff ff 00 00 00 00 80 00 + 80 00 80 00 80 00 80 00 80 00 80 00 80 00 80 00 + 80 00 80 00 80 00 80 00 80 00 80 00 80 00 80 00 + + -> 1b 56 31 30 00 00 + <- [26 byte payload] + + CP-D707DW: + + e4 56 31 30 00 00 00 XX YY ZZ 00 00 TT 00 00 00 + 00 00 00 00 WW 00 00 00 00 00 + + XX/YY/ZZ and WW/TT are unknown. Observed values: + + 00 00 00 00/00 + 40 80 a0 80/0f + 80 80 a0 + 40 80 90 + 40 80 00 + + also seen: + + e4 56 31 30 00 00 00 00 00 00 00 00 0f 00 00 00 + 00 0a 05 05 80 00 00 00 00 00 + + e4 56 31 30 00 00 00 40 80 90 10 00 0f 00 00 00 + 00 0a 05 05 80 00 00 00 00 00 + + e4 56 31 30 00 00 00 00 40 80 00 00 00 ff 40 00 + 00 00 00 00 80 00 00 00 00 00 + + print just submitted: + + e4 56 31 30 00 00 00 00 40 20 00 00 00 8c 00 00 + 00 00 00 00 80 00 00 00 00 00 + + prints running... + + e4 56 31 30 00 00 00 00 40 20 00 00 00 cf 00 20 + 00 00 00 00 80 00 00 00 00 00 + + CP-K60DW-S: + + e4 56 31 30 00 00 00 XX YY 00 00 00 0f 00 00 00 + 00 00 00 00 80 00 00 00 00 00 + + XX/YY are unknown, observed values: + + 40/80 + 00/00 + + Memory status query: + + -> 1b 56 33 00 XX XX YY YY UU 00 + + XX XX == columns + YY YY == rows + UU == 0x00 glossy, 0x80 matte + + <- [ 6 byte payload ] + + e4 56 33 00 00 00 + e4 56 33 00 00 01 + e4 56 33 ff 01 01 + + |--- Size check, 00 ok, 01 fail + |------ Memory check, 00 ok, 01 fail, ff bad size + + ** ** ** ** ** ** + + The windows drivers seem to send the id and status queries before + and in between each of the chunks sent to the printer. There doesn't + appear to be any particular intelligence in the protocol, but it didn't + work when the raw dump was submitted as-is. + + ** ** ** ** ** ** + +Various deck status dumps: + +0080 00 00 00 00 00 00 01 d2 39 00 00 00 07 00 00 00 ........9....... +0090 61 8f 00 00 01 40 01 36 00 00 00 00 00 17 79 80 a....@.6......y. + +0080 00 00 00 00 00 00 01 c6 39 00 00 00 08 00 00 00 ........9....... +0090 61 8f 00 00 01 40 01 35 00 00 00 00 00 18 79 80 a....@.5......y. + +0080 00 00 00 00 00 00 02 19 50 00 00 00 19 00 00 01 ........P....... +0090 6c 8f 00 00 01 40 01 22 00 00 00 00 00 27 83 80 l....@.".....'.. + +0080 00 00 00 00 00 00 02 00 3e 00 00 04 96 00 00 00 ........>....... +0090 ff 0f 01 00 00 c8 00 52 00 00 00 00 05 28 75 80 .......R.....(u. + +00c0 00 00 00 00 00 00 01 f3 3d 00 00 06 39 00 00 00 ........=...9... +00d0 ff 02 00 00 01 90 00 c3 00 00 00 00 06 67 78 00 .............gx. + +0080 00 00 00 00 00 00 01 d0 38 00 00 03 70 00 00 00 ........8...p... +0090 ff 02 00 00 01 90 00 1e 01 00 00 00 03 83 72 80 ..............r. + +0080 00 00 00 00 00 00 01 d6 39 00 00 00 20 00 00 00 ........9... ... +0090 ff 02 00 00 01 90 01 7c 01 00 00 00 00 33 72 80 .......|.....3r. + + 00 00 00 0a 05 05 01 d5 38 00 00 00 14 00 00 00 + ff ff ff ff ff ff ff ff ff ff 00 00 00 27 72 80 ?? Error ?? + + 80 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 00 + ff ff ff ff ff ff ff ff ff ff 00 00 00 00 80 00 NO DECK PRESENT + */ diff --git a/src/cups/mitsu9550_print.c b/src/cups/backend_mitsu9550.c index 952baa3..d257227 100644 --- a/src/cups/mitsu9550_print.c +++ b/src/cups/backend_mitsu9550.c @@ -1,7 +1,7 @@ /* * Mitsubishi CP-9550DW[-S] Photo Printer CUPS backend * - * (c) 2014-2015 Solomon Peachy <pizza@shaftnet.org> + * (c) 2014-2016 Solomon Peachy <pizza@shaftnet.org> * * The latest version of this program can be found at: * @@ -57,6 +57,10 @@ struct mitsu9550_ctx { uint16_t rows; uint16_t cols; + + uint16_t last_donor; + uint16_t last_remain; + int marker_reported; }; /* Spool file structures */ @@ -141,6 +145,63 @@ struct mitsu9550_status2 { #define CMDBUF_LEN 64 #define READBACK_LEN 128 +#define QUERY_STATUS() \ + do {\ + struct mitsu9550_status *sts = (struct mitsu9550_status*) rdbuf;\ + /* struct mitsu9550_status2 *sts2 = (struct mitsu9550_status2*) rdbuf; */ \ + struct mitsu9550_media *media = (struct mitsu9550_media *) rdbuf; \ + uint16_t donor, remain; \ + /* media */ \ + ret = mitsu9550_get_status(ctx, rdbuf, 0, 0, 1); \ + if (ret < 0) \ + return CUPS_BACKEND_FAILED; \ + \ + /* Tell CUPS about the consumables we report */ \ + if (!ctx->marker_reported) { \ + ctx->marker_reported = 1; \ + ATTR("marker-colors=#00FFFF#FF00FF#FFFF00\n"); \ + ATTR("marker-high-levels=100\n"); \ + ATTR("marker-low-levels=10\n"); \ + ATTR("marker-names='%s'\n", mitsu9550_media_types(media->type)); \ + ATTR("marker-types=ribbonWax\n"); \ + } \ + \ + /* Sanity-check media response */ \ + if (media->remain == 0 || media->max == 0) { \ + ERROR("Printer out of media!\n"); \ + ATTR("marker-levels=%d\n", 0); \ + return CUPS_BACKEND_HOLD; \ + } \ + donor = be16_to_cpu(media->remain)/be16_to_cpu(media->max); \ + if (donor != ctx->last_donor) { \ + ctx->last_donor = donor; \ + ATTR("marker-levels=%u\n", donor); \ + } \ + remain = be16_to_cpu(media->remain); \ + if (remain != ctx->last_remain) { \ + ctx->last_remain = remain; \ + ATTR("marker-message=\"%u prints remaining on '%s' ribbon\"\n", remain, mitsu9550_media_types(media->type)); \ + } \ + if (validate_media(media->type, ctx->cols, ctx->rows)) { \ + ERROR("Incorrect media (%u) type for printjob (%ux%u)!\n", media->type, ctx->cols, ctx->rows); \ + return CUPS_BACKEND_HOLD; \ + } \ + /* status2 */ \ + ret = mitsu9550_get_status(ctx, rdbuf, 0, 1, 0); \ + if (ret < 0) \ + return CUPS_BACKEND_FAILED; \ + /* status */ \ + ret = mitsu9550_get_status(ctx, rdbuf, 1, 0, 0); \ + if (ret < 0) \ + return CUPS_BACKEND_FAILED; \ + \ + /* Make sure we're idle */ \ + if (sts->sts5 != 0) { /* Printer ready for another job */ \ + sleep(1); \ + goto top; \ + } \ + } while (0); + static void *mitsu9550_init(void) { struct mitsu9550_ctx *ctx = malloc(sizeof(struct mitsu9550_ctx)); @@ -170,7 +231,9 @@ static void mitsu9550_attach(void *vctx, struct libusb_device_handle *dev, libusb_get_device_descriptor(device, &desc); ctx->type = lookup_printer_type(&mitsu9550_backend, - desc.idVendor, desc.idProduct); + desc.idVendor, desc.idProduct); + + ctx->last_donor = ctx->last_remain = 65535; } @@ -282,6 +345,27 @@ static int mitsu9550_get_status(struct mitsu9550_ctx *ctx, uint8_t *resp, int st return 0; } +static char *mitsu9550_media_types(uint8_t type) +{ + switch (type) { + case 0x01: + return "3.5x5"; + case 0x02: + return "4x6"; + case 0x03: + return "PC"; + case 0x04: + return "5x7"; + case 0x05: + return "6x9"; + case 0x06: + return "V"; + default: + return "Unknown"; + } + return NULL; +} + static int validate_media(int type, int cols, int rows) { switch(type) { case 0x01: /* 3.5x5 */ @@ -322,9 +406,8 @@ static int mitsu9550_main_loop(void *vctx, int copies) { struct mitsu9550_hdr2 *hdr2; struct mitsu9550_cmd cmd; uint8_t rdbuf[READBACK_LEN]; - uint8_t *ptr; - + int ret; if (!ctx) @@ -335,11 +418,11 @@ static int mitsu9550_main_loop(void *vctx, int copies) { hdr2->copies = cpu_to_be16(copies); ptr = ctx->databuf; - + top: if (ctx->type == P_MITSU_9550S) { int num; - + /* Send "unknown 1" command */ cmd.cmd[0] = 0x1b; cmd.cmd[1] = 0x53; @@ -348,7 +431,7 @@ top: if ((ret = send_data(ctx->dev, ctx->endp_down, (uint8_t*) &cmd, sizeof(cmd)))) return CUPS_BACKEND_FAILED; - + /* Send "unknown 2" command */ cmd.cmd[0] = 0x1b; cmd.cmd[1] = 0x4b; @@ -357,7 +440,7 @@ top: if ((ret = send_data(ctx->dev, ctx->endp_down, (uint8_t*) &cmd, sizeof(cmd)))) return CUPS_BACKEND_FAILED; - + ret = read_data(ctx->dev, ctx->endp_up, rdbuf, READBACK_LEN, &num); if (ret < 0) @@ -365,43 +448,10 @@ top: // seen so far: eb 4b 7f 00 02 00 5e } - /* Query statuses */ - { - struct mitsu9550_status *sts = (struct mitsu9550_status*) rdbuf; - //struct mitsu9550_status2 *sts2 = (struct mitsu9550_status2*) rdbuf; - struct mitsu9550_media *media = (struct mitsu9550_media *) rdbuf; - - ret = mitsu9550_get_status(ctx, rdbuf, 0, 0, 1); // media - if (ret < 0) - return CUPS_BACKEND_FAILED; - - /* Sanity-check media response */ - if (media->remain == 0 || media->max == 0) { - ERROR("Printer out of media!\n"); - return CUPS_BACKEND_HOLD; - } - if (validate_media(media->type, ctx->cols, ctx->rows)) { - ERROR("Incorrect media (%d) type for printjob (%dx%d)!\n", media->type, ctx->cols, ctx->rows); - return CUPS_BACKEND_HOLD; - } - - ret = mitsu9550_get_status(ctx, rdbuf, 0, 1, 0); // status2 - if (ret < 0) - return CUPS_BACKEND_FAILED; - - ret = mitsu9550_get_status(ctx, rdbuf, 1, 0, 0); // status - if (ret < 0) - return CUPS_BACKEND_FAILED; - - /* Make sure we're idle */ - if (sts->sts5 != 0) { /* Printer ready for another job */ - sleep(1); - goto top; - } - } + QUERY_STATUS(); /* Now it's time for the actual print job! */ - + if (ctx->type == P_MITSU_9550S) { cmd.cmd[0] = 0x1b; cmd.cmd[1] = 0x44; @@ -411,41 +461,8 @@ top: (uint8_t*) &cmd, 4))) return CUPS_BACKEND_FAILED; } - - /* Query statuses */ - { - struct mitsu9550_status *sts = (struct mitsu9550_status*) rdbuf; -// struct mitsu9550_status2 *sts2 = (struct mitsu9550_status2*) rdbuf; - struct mitsu9550_media *media = (struct mitsu9550_media *) rdbuf; - ret = mitsu9550_get_status(ctx, rdbuf, 0, 0, 1); // media - if (ret < 0) - return CUPS_BACKEND_FAILED; - - /* Sanity-check media response */ - if (media->remain == 0 || media->max == 0) { - ERROR("Printer out of media!\n"); - return CUPS_BACKEND_HOLD; - } - if (validate_media(media->type, ctx->cols, ctx->rows)) { - ERROR("Incorrect media (%d) type for printjob (%dx%d)!\n", media->type, ctx->cols, ctx->rows); - return CUPS_BACKEND_HOLD; - } - - ret = mitsu9550_get_status(ctx, rdbuf, 0, 1, 0); // status2 - if (ret < 0) - return CUPS_BACKEND_FAILED; - - ret = mitsu9550_get_status(ctx, rdbuf, 1, 0, 0); // status - if (ret < 0) - return CUPS_BACKEND_FAILED; - - /* Make sure we're idle */ - if (sts->sts5 != 0) { /* Printer ready for another job */ - sleep(1); - goto top; - } - } + QUERY_STATUS(); /* Send printjob headers from spool data */ if ((ret = send_data(ctx->dev, ctx->endp_down, @@ -513,6 +530,7 @@ top: struct mitsu9550_status *sts = (struct mitsu9550_status*) rdbuf; // struct mitsu9550_status2 *sts2 = (struct mitsu9550_status2*) rdbuf; struct mitsu9550_media *media = (struct mitsu9550_media *) rdbuf; + uint16_t donor, remain; ret = mitsu9550_get_status(ctx, rdbuf, 0, 0, 1); // media if (ret < 0) @@ -521,8 +539,19 @@ top: /* Sanity-check media response */ if (media->remain == 0 || media->max == 0) { ERROR("Printer out of media!\n"); + ATTR("marker-levels=%d\n", 0); return CUPS_BACKEND_HOLD; } + donor = be16_to_cpu(media->remain)/be16_to_cpu(media->max); + if (donor != ctx->last_donor) { + ctx->last_donor = donor; + ATTR("marker-levels=%d\n", donor); + } + remain = be16_to_cpu(media->remain); + if (remain != ctx->last_remain) { + ctx->last_remain = remain; + ATTR("marker-message=\"%u prints remaining on '%s' ribbon\"\n", remain, mitsu9550_media_types(media->type)); + } ret = mitsu9550_get_status(ctx, rdbuf, 0, 1, 0); // status2 if (ret < 0) @@ -565,7 +594,8 @@ top: struct mitsu9550_status *sts = (struct mitsu9550_status*) rdbuf; // struct mitsu9550_status2 *sts2 = (struct mitsu9550_status2*) rdbuf; struct mitsu9550_media *media = (struct mitsu9550_media *) rdbuf; - + uint16_t donor, remain; + ret = mitsu9550_get_status(ctx, rdbuf, 0, 0, 1); // media if (ret < 0) return CUPS_BACKEND_FAILED; @@ -573,13 +603,24 @@ top: /* Sanity-check media response */ if (media->remain == 0 || media->max == 0) { ERROR("Printer out of media!\n"); + ATTR("marker-levels=%d\n", 0); return CUPS_BACKEND_HOLD; } + donor = be16_to_cpu(media->remain)/be16_to_cpu(media->max); + if (donor != ctx->last_donor) { + ctx->last_donor = donor; + ATTR("marker-levels=%d\n", donor); + } + remain = be16_to_cpu(media->remain); + if (remain != ctx->last_remain) { + ctx->last_remain = remain; + ATTR("marker-message=\"%u prints remaining on '%s' ribbon\"\n", remain, mitsu9550_media_types(media->type)); + } ret = mitsu9550_get_status(ctx, rdbuf, 0, 1, 0); // status2 if (ret < 0) return CUPS_BACKEND_FAILED; - + ret = mitsu9550_get_status(ctx, rdbuf, 1, 0, 0); // status if (ret < 0) return CUPS_BACKEND_FAILED; @@ -601,33 +642,12 @@ top: sleep(1); } - + INFO("Print complete\n"); return CUPS_BACKEND_OK; } -static char *mitsu9550_media_types(uint8_t type) -{ - switch (type) { - case 0x01: - return "3.5x5"; - case 0x02: - return "4x6"; - case 0x03: - return "PC"; - case 0x04: - return "5x7"; - case 0x05: - return "6x9"; - case 0x06: - return "V"; - default: - return "Unknown"; - } - return NULL; -} - static void mitsu9550_dump_media(struct mitsu9550_media *resp) { INFO("Media type : %02x (%s)\n", @@ -644,7 +664,6 @@ static void mitsu9550_dump_status(struct mitsu9550_status *resp) be16_to_cpu(resp->copies)); INFO("Other status : %02x %02x %02x %02x %02x\n", resp->sts3, resp->sts4, resp->sts5, resp->sts6, resp->sts7); - } static int mitsu9550_query_media(struct mitsu9550_ctx *ctx) @@ -707,7 +726,7 @@ static int mitsu9550_query_serno(struct libusb_device_handle *dev, uint8_t endp_ /* If response is truncated, handle it */ num -= (sizeof(cmd) + 1); if ((unsigned int) num != rdbuf[4]) - WARNING("Short serno read! (%d vs %d)\r\n", + WARNING("Short serno read! (%d vs %u)\r\n", num, rdbuf[4]); /* model and serial number are encoded as 16-bit unicode, @@ -740,12 +759,9 @@ static int mitsu9550_cmdline_arg(void *vctx, int argc, char **argv) if (!ctx) return -1; - /* Reset arg parsing */ - optind = 1; - opterr = 0; while ((i = getopt(argc, argv, GETOPT_LIST_GLOBAL "ms")) >= 0) { switch(i) { - GETOPT_PROCESS_GLOBAL + GETOPT_PROCESS_GLOBAL case 'm': j = mitsu9550_query_media(ctx); break; @@ -765,7 +781,7 @@ static int mitsu9550_cmdline_arg(void *vctx, int argc, char **argv) /* Exported */ struct dyesub_backend mitsu9550_backend = { .name = "Mitsubishi CP-9550DW-S", - .version = "0.15", + .version = "0.16", .uri_prefix = "mitsu9550", .cmdline_usage = mitsu9550_cmdline, .cmdline_arg = mitsu9550_cmdline_arg, diff --git a/src/cups/shinko_s1245_print.c b/src/cups/backend_shinkos1245.c index 72b5ec9..b375cba 100644 --- a/src/cups/shinko_s1245_print.c +++ b/src/cups/backend_shinkos1245.c @@ -1,7 +1,7 @@ /* * Shinko/Sinfonia CHC-S1245 CUPS backend -- libusb-1.0 version * - * (c) 2013-2015 Solomon Peachy <pizza@shaftnet.org> + * (c) 2015-2016 Solomon Peachy <pizza@shaftnet.org> * * Low-level documentation was provided by Sinfonia, Inc. Thank you! * @@ -271,8 +271,6 @@ enum { CURVE_TABLE_STATUS_CURRENT = 0x02, }; -// XXX Paper jam has 0x01 -> 0xff as error codes - /* Query media info */ struct shinkos1245_cmd_getmedia { struct shinkos1245_cmd_hdr hdr; @@ -608,6 +606,30 @@ static int shinkos1245_canceljob(struct shinkos1245_ctx *ctx, return 0; } +static int shinkos1245_reset(struct shinkos1245_ctx *ctx) +{ + struct shinkos1245_cmd_reset cmd; + struct shinkos1245_resp_status sts; + + int ret, num; + + shinkos1245_fill_hdr(&cmd.hdr); + cmd.cmd[0] = 0xc0; + + ret = shinkos1245_do_cmd(ctx, &cmd, sizeof(cmd), + &sts, sizeof(sts), &num); + if (ret < 0) { + ERROR("Failed to execute RESET command\n"); + return ret; + } + if (sts.code != CMD_CODE_OK) { + ERROR("Bad return code on RESET command\n"); + return -99; + } + return 0; +} + + static int shinkos1245_set_matte(struct shinkos1245_ctx *ctx, int intensity) { @@ -868,26 +890,26 @@ static void shinkos1245_dump_status(struct shinkos1245_resp_status *sts) shinkos1245_status_str(sts), sts->state.status1, sts->state.status2, sts->state.error); INFO("Counters:\n"); - INFO("\tLifetime : %d\n", be32_to_cpu(sts->counters.lifetime)); - INFO("\tThermal Head : %d\n", be32_to_cpu(sts->counters.maint)); - INFO("\tMedia : %d\n", be32_to_cpu(sts->counters.media)); - INFO("\tCutter : %d\n", be32_to_cpu(sts->counters.cutter)); + INFO("\tLifetime : %u\n", be32_to_cpu(sts->counters.lifetime)); + INFO("\tThermal Head : %u\n", be32_to_cpu(sts->counters.maint)); + INFO("\tMedia : %u\n", be32_to_cpu(sts->counters.media)); + INFO("\tCutter : %u\n", be32_to_cpu(sts->counters.cutter)); INFO("Versions:\n"); - INFO("\tUSB Boot : %d\n", sts->counters.ver_boot); - INFO("\tUSB Control : %d\n", sts->counters.ver_ctrl); - INFO("\tMain Boot : %d\n", be16_to_cpu(sts->versions.main_boot)); - INFO("\tMain Control: %d\n", be16_to_cpu(sts->versions.main_control)); - INFO("\tDSP Boot : %d\n", be16_to_cpu(sts->versions.dsp_boot)); - INFO("\tDSP Control : %d\n", be16_to_cpu(sts->versions.dsp_control)); + INFO("\tUSB Boot : %u\n", sts->counters.ver_boot); + INFO("\tUSB Control : %u\n", sts->counters.ver_ctrl); + INFO("\tMain Boot : %u\n", be16_to_cpu(sts->versions.main_boot)); + INFO("\tMain Control: %u\n", be16_to_cpu(sts->versions.main_control)); + INFO("\tDSP Boot : %u\n", be16_to_cpu(sts->versions.dsp_boot)); + INFO("\tDSP Control : %u\n", be16_to_cpu(sts->versions.dsp_control)); // INFO("USB TypeFlag: %02x\n", sts->counters.control_flag); - INFO("Bank 1 ID: %d\n", sts->counters2.bank1_id); + INFO("Bank 1 ID: %u\n", sts->counters2.bank1_id); INFO("\tPrints: %d/%d complete\n", be16_to_cpu(sts->counters2.bank1_complete), be16_to_cpu(sts->counters2.bank1_spec)); - INFO("Bank 2 ID: %d\n", sts->counters2.bank2_id); + INFO("Bank 2 ID: %u\n", sts->counters2.bank2_id); INFO("\tPrints: %d/%d complete\n", be16_to_cpu(sts->counters2.bank2_complete), be16_to_cpu(sts->counters2.bank2_spec)); @@ -917,7 +939,7 @@ static void shinkos1245_dump_media(struct shinkos1245_mediadesc *medias, INFO("Supported print sizes: %d\n", count); for (i = 0 ; i < count ; i++) { - INFO("\t %02x: %04d*%04d (%02x/%02d)\n", + INFO("\t %02x: %04u*%04u (%02x/%02u)\n", medias[i].print_type, medias[i].columns, medias[i].rows, @@ -1042,7 +1064,7 @@ static int set_tonecurve(struct shinkos1245_ctx *ctx, int type, int table, char struct shinkos1245_cmd_tone cmd; struct shinkos1245_resp_status resp; - INFO("Read %d/%d Tone Curve from '%s'\n", type, table, fname); // XXX + INFO("Read %d/%d Tone Curve from '%s'\n", type, table, fname); /* Allocate space */ remaining = TONE_CURVE_SIZE; @@ -1152,6 +1174,7 @@ static void shinkos1245_cmdline(void) DEBUG("\t\t[ -s ] # Query status\n"); DEBUG("\t\t[ -u ] # Query user string\n"); DEBUG("\t\t[ -U sometext ] # Set user string\n"); + DEBUG("\t\t[ -R ] # Reset printer\n"); DEBUG("\t\t[ -X jobid ] # Abort a printjob\n"); DEBUG("\t\t[ -F ] # Tone curve refers to FINE mode\n"); DEBUG("\t\t[ -c filename ] # Get user/NV tone curve\n"); @@ -1168,7 +1191,7 @@ int shinkos1245_cmdline_arg(void *vctx, int argc, char **argv) if (!ctx) return -1; - while ((i = getopt(argc, argv, GETOPT_LIST_GLOBAL "c:C:l:L:FmsuU:X:")) >= 0) { + while ((i = getopt(argc, argv, GETOPT_LIST_GLOBAL "c:C:l:L:FmRsuU:X:")) >= 0) { switch(i) { GETOPT_PROCESS_GLOBAL case 'F': @@ -1191,6 +1214,9 @@ int shinkos1245_cmdline_arg(void *vctx, int argc, char **argv) if (!j) shinkos1245_dump_media(ctx->medias, ctx->num_medias); break; + case 'R': + j = shinkos1245_reset(ctx); + break; case 's': { struct shinkos1245_resp_status sts; j = shinkos1245_get_status(ctx, &sts); @@ -1257,7 +1283,9 @@ static void shinkos1245_attach(void *vctx, struct libusb_device_handle *dev, desc.idVendor, desc.idProduct); /* Ensure jobid is sane */ - ctx->jobid = (jobid & 0x7f) + 1; + ctx->jobid = jobid & 0x7f; + if (!ctx->jobid) + ctx->jobid++; } @@ -1298,7 +1326,7 @@ static int shinkos1245_read_parse(void *vctx, int data_fd) { ctx->hdr.model = le32_to_cpu(ctx->hdr.model); if(ctx->hdr.model != 1245) { - ERROR("Unrecognized printer (%d)!\n", ctx->hdr.model); + ERROR("Unrecognized printer (%u)!\n", ctx->hdr.model); return CUPS_BACKEND_CANCEL; } @@ -1365,8 +1393,6 @@ static int shinkos1245_main_loop(void *vctx, int copies) { int i, num, last_state = -1, state = S_IDLE; struct shinkos1245_resp_status status1, status2; - // XXX query printer info - /* Query Media information if necessary */ if (!ctx->num_medias) shinkos1245_get_media(ctx); @@ -1388,7 +1414,7 @@ static int shinkos1245_main_loop(void *vctx, int copies) { } /* Fix max print count. */ - if (copies > 9999) // XXX test against remaining media + if (copies > 9999) // XXX test against remaining media? copies = 9999; top: @@ -1404,7 +1430,7 @@ top: if (memcmp(&status1, &status2, sizeof(status1))) { memcpy(&status2, &status1, sizeof(status1)); - // status changed, check for errors and whatnot + // status changed. } else if (state == last_state) { sleep(1); goto top; @@ -1420,8 +1446,6 @@ top: switch (state) { case S_IDLE: - INFO("Waiting for printer idle\n"); - if (status1.state.status1 == STATE_STATUS1_STANDBY) { state = S_PRINTER_READY_CMD; break; @@ -1431,12 +1455,26 @@ top: state = S_PRINTER_READY_CMD; break; } - - // XXX what about STATUS_WAIT ? - // XXX see if printer has an empty bank? - +#if 0 // XXX is this necessary + if (status1.state.status1 == STATE_STATUS1_WAIT) { + INFO("Printer busy: %s\n", + shinkos1245_status_str(&status1)); + break; + } +#endif /* If the printer is "busy" check to see if there's any open memory banks so we can queue the next print */ + + /* make sure we're not colliding with an existing + jobid */ + while (ctx->jobid == status1.counters2.bank1_id || + ctx->jobid == status1.counters2.bank2_id) { + ctx->jobid++; + ctx->jobid &= 0x7f; + if (!ctx->jobid) + ctx->jobid++; + } + if (!status1.counters2.bank1_remain || !status1.counters2.bank2_remain) { state = S_PRINTER_READY_CMD; @@ -1465,7 +1503,7 @@ top: } } - INFO("Initiating print job (internal id %d)\n", ctx->jobid); + INFO("Sending print job (internal id %u)\n", ctx->jobid); shinkos1245_fill_hdr(&cmd.hdr); cmd.cmd[0] = 0x0a; @@ -1582,7 +1620,7 @@ static int shinkos1245_query_serno(struct libusb_device_handle *dev, uint8_t end struct dyesub_backend shinkos1245_backend = { .name = "Shinko/Sinfonia CHC-S1245", - .version = "0.07WIP", + .version = "0.09WIP", .uri_prefix = "shinkos1245", .cmdline_usage = shinkos1245_cmdline, .cmdline_arg = shinkos1245_cmdline_arg, diff --git a/src/cups/shinko_s2145_print.c b/src/cups/backend_shinkos2145.c index c6fd88f..ec7bcd6 100644 --- a/src/cups/shinko_s2145_print.c +++ b/src/cups/backend_shinkos2145.c @@ -1,7 +1,7 @@ /* * Shinko/Sinfonia CHC-S2145 CUPS backend -- libusb-1.0 version * - * (c) 2013-2015 Solomon Peachy <pizza@shaftnet.org> + * (c) 2013-2016 Solomon Peachy <pizza@shaftnet.org> * * Development of this backend was sponsored by: * @@ -103,6 +103,10 @@ struct shinkos2145_ctx { uint8_t *databuf; int datalen; + + uint16_t last_donor; + uint16_t last_remain; + uint16_t media_prints; }; /* Structs for printer */ @@ -179,7 +183,7 @@ struct s2145_print_cmd { #define PRINT_MEDIA_6x8 0x06 #define PRINT_MEDIA_2x6 0x07 -static char *print_medias (uint8_t v) { +static char *print_sizes (uint8_t v) { switch (v) { case PRINT_MEDIA_4x6: return "4x6"; @@ -198,6 +202,23 @@ static char *print_medias (uint8_t v) { } } +static int print_counts (uint8_t v) { + switch (v) { + case PRINT_MEDIA_4x6: + return 700; + case PRINT_MEDIA_5x3_5: + return 800; + case PRINT_MEDIA_5x7: + return 400; + case PRINT_MEDIA_6x9: + return 310; + case PRINT_MEDIA_6x8: + return 350; + default: + return 700; + } +} + #define PRINT_MODE_DEFAULT 0x01 #define PRINT_MODE_STD_GLOSSY 0x02 #define PRINT_MODE_FINE_GLOSSY 0x03 @@ -784,7 +805,7 @@ struct s2145_getunique_resp { #define READBACK_LEN 128 /* Needs to be larger than largest response hdr */ #define CMDBUF_LEN sizeof(struct s2145_print_cmd) -uint8_t rdbuf[READBACK_LEN]; +static uint8_t rdbuf[READBACK_LEN]; static int s2145_do_cmd(struct shinkos2145_ctx *ctx, uint8_t *cmd, int cmdlen, @@ -868,7 +889,7 @@ static int get_status(struct shinkos2145_ctx *ctx) le16_to_cpu(resp->bank1_specified), le16_to_cpu(resp->bank1_remaining)); - INFO("Bank 2: 0x%02x (%s) Job %03d @ %03d/%03d (%03d remaining)\n", + INFO("Bank 2: 0x%02x (%s) Job %03u @ %03u/%03u (%03u remaining)\n", resp->bank2_status, bank_statuses(resp->bank1_status), resp->bank2_printid, le16_to_cpu(resp->bank2_finished), @@ -906,7 +927,7 @@ static int get_fwinfo(struct shinkos2145_ctx *ctx) if (le16_to_cpu(resp->hdr.payload_len) != (sizeof(struct s2145_fwinfo_resp) - sizeof(struct s2145_status_hdr))) continue; - + INFO(" %s\t ver %02x.%02x\n", fwinfo_targets(i), resp->major, resp->minor); #if 0 @@ -937,21 +958,21 @@ static int get_errorlog(struct shinkos2145_ctx *ctx) ERROR("Failed to execute %s command\n", cmd_names(cmd.cmd)); return ret; } - + if (le16_to_cpu(resp->hdr.payload_len) != (sizeof(struct s2145_errorlog_resp) - sizeof(struct s2145_status_hdr))) return -2; - INFO("Stored Error Events: %d entries:\n", resp->count); + INFO("Stored Error Events: %u entries:\n", resp->count); for (i = 0 ; i < resp->count ; i++) { INFO(" %02d: @ %08u prints : 0x%02x/0x%02x (%s)\n", i, le32_to_cpu(resp->items[i].print_counter), - resp->items[i].major, resp->items[i].minor, + resp->items[i].major, resp->items[i].minor, error_codes(resp->items[i].major, resp->items[i].minor)); } return 0; } -static int get_mediainfo(struct shinkos2145_ctx *ctx) +static int get_mediainfo(struct shinkos2145_ctx *ctx) { struct s2145_cmd_hdr cmd; struct s2145_mediainfo_resp *resp = (struct s2145_mediainfo_resp *) rdbuf; @@ -968,23 +989,23 @@ static int get_mediainfo(struct shinkos2145_ctx *ctx) ERROR("Failed to execute %s command\n", cmd_names(cmd.cmd)); return ret; } - + if (le16_to_cpu(resp->hdr.payload_len) != (sizeof(struct s2145_mediainfo_resp) - sizeof(struct s2145_status_hdr))) return -2; - INFO("Supported Media Information: %d entries:\n", resp->count); + INFO("Supported Media Information: %u entries:\n", resp->count); for (i = 0 ; i < resp->count ; i++) { - INFO(" %02d: C 0x%02x (%s), %04dx%04d, M 0x%02x (%s), P 0x%02x (%s)\n", i, - resp->items[i].code, print_medias(resp->items[i].code), + INFO(" %02d: C 0x%02x (%s), %04ux%04u, M 0x%02x (%s), P 0x%02x (%s)\n", i, + resp->items[i].code, print_sizes(resp->items[i].code), le16_to_cpu(resp->items[i].columns), - le16_to_cpu(resp->items[i].rows), + le16_to_cpu(resp->items[i].rows), resp->items[i].media_type, media_types(resp->items[i].media_type), resp->items[i].print_type, print_methods(resp->items[i].print_type)); } return 0; } -static int get_user_string(struct shinkos2145_ctx *ctx) +static int get_user_string(struct shinkos2145_ctx *ctx) { struct s2145_cmd_hdr cmd; struct s2145_getunique_resp *resp = (struct s2145_getunique_resp*) rdbuf; @@ -1296,9 +1317,6 @@ int shinkos2145_cmdline_arg(void *vctx, int argc, char **argv) if (!ctx) return -1; - /* Reset arg parsing */ - optind = 1; - opterr = 0; while ((i = getopt(argc, argv, GETOPT_LIST_GLOBAL "b:c:C:eFil:L:mr:R:suU:X:")) >= 0) { switch(i) { GETOPT_PROCESS_GLOBAL @@ -1368,7 +1386,7 @@ static void *shinkos2145_init(void) if (!ctx) { ERROR("Memory allocation failure! (%d bytes)\n", (int)sizeof(struct shinkos2145_ctx)); - + return NULL; } memset(ctx, 0, sizeof(struct shinkos2145_ctx)); @@ -1394,7 +1412,12 @@ static void shinkos2145_attach(void *vctx, struct libusb_device_handle *dev, desc.idVendor, desc.idProduct); /* Ensure jobid is sane */ - ctx->jobid = (jobid & 0x7f) + 1; + ctx->jobid = (jobid & 0x7f); + if (!ctx->jobid) + ctx->jobid++; + + /* Initialize donor */ + ctx->last_donor = ctx->last_remain = ctx->media_prints = 65535; } static void shinkos2145_teardown(void *vctx) { @@ -1436,7 +1459,7 @@ static int shinkos2145_read_parse(void *vctx, int data_fd) { } if (le32_to_cpu(ctx->hdr.model) != 2145) { - ERROR("Unrecognized printer (%d)!\n", le32_to_cpu(ctx->hdr.model)); + ERROR("Unrecognized printer (%u)!\n", le32_to_cpu(ctx->hdr.model)); return CUPS_BACKEND_CANCEL; } @@ -1514,12 +1537,17 @@ static int shinkos2145_main_loop(void *vctx, int copies) { ERROR("Failed to execute %s command\n", cmd_names(cmd->cmd)); return CUPS_BACKEND_FAILED; } - + if (le16_to_cpu(media->hdr.payload_len) != (sizeof(struct s2145_mediainfo_resp) - sizeof(struct s2145_status_hdr))) return CUPS_BACKEND_FAILED; /* Validate print sizes */ for (i = 0; i < media->count ; i++) { + /* Figure out the media type... */ + int media_prints = print_counts(media->items[i].code); + if (media_prints < ctx->media_prints) + ctx->media_prints = media_prints; + /* Look for matching media */ if (le16_to_cpu(media->items[i].columns) == cpu_to_le16(le32_to_cpu(ctx->hdr.columns)) && le16_to_cpu(media->items[i].rows) == cpu_to_le16(le32_to_cpu(ctx->hdr.rows)) && @@ -1531,6 +1559,13 @@ static int shinkos2145_main_loop(void *vctx, int copies) { return CUPS_BACKEND_HOLD; } + /* Tell CUPS about the consumables we report */ + ATTR("marker-colors=#00FFFF#FF00FF#FFFF00\n"); + ATTR("marker-high-levels=100\n"); + ATTR("marker-low-levels=10\n"); + ATTR("marker-names='Color'\n"); + ATTR("marker-types=ribbonWax\n"); + // XXX check copies against remaining media! top: @@ -1553,12 +1588,27 @@ top: } if (memcmp(rdbuf, rdbuf2, READBACK_LEN)) { + uint16_t donor, remain; + memcpy(rdbuf2, rdbuf, READBACK_LEN); - INFO("Printer Status: 0x%02x (%s)\n", + INFO("Printer Status: 0x%02x (%s)\n", sts->hdr.status, status_str(sts->hdr.status)); + + /* Guessimate a percentage for the remaining media */ + donor = le32_to_cpu(sts->count_ribbon_left) * 100 / ctx->media_prints; + if (donor != ctx->last_donor) { + ctx->last_donor = donor; + ATTR("marker-levels=%d\n", donor); + } + remain = le32_to_cpu(sts->count_ribbon_left); + if (remain != ctx->last_remain) { + ctx->last_remain = remain; + ATTR("marker-message=\"%d prints remaining on ribbon\"\n", remain); + } + if (sts->hdr.result != RESULT_SUCCESS) - goto printer_error; + goto printer_error; if (sts->hdr.error == ERROR_PRINTER) goto printer_error; } else if (state == last_state) { @@ -1567,19 +1617,30 @@ top: } last_state = state; - fflush(stderr); + fflush(stderr); switch (state) { case S_IDLE: INFO("Waiting for printer idle\n"); + + /* make sure we're not colliding with an existing + jobid */ + while (ctx->jobid == sts->bank1_printid || + ctx->jobid == sts->bank2_printid) { + ctx->jobid++; + ctx->jobid &= 0x7f; + if (!ctx->jobid) + ctx->jobid++; + } + /* If either bank is free, continue */ - if (sts->bank1_status == BANK_STATUS_FREE || - sts->bank2_status == BANK_STATUS_FREE) + if (sts->bank1_status == BANK_STATUS_FREE || + sts->bank2_status == BANK_STATUS_FREE) state = S_PRINTER_READY_CMD; break; case S_PRINTER_READY_CMD: - INFO("Initiating print job (internal id %d)\n", ctx->jobid); + INFO("Sending print job (internal id %u)\n", ctx->jobid); memset(cmdbuf, 0, CMDBUF_LEN); print->hdr.cmd = cpu_to_le16(S2145_CMD_PRINTJOB); @@ -1636,7 +1697,7 @@ top: if (state != S_FINISHED) goto top; - + INFO("Print complete\n"); return CUPS_BACKEND_OK; @@ -1692,7 +1753,7 @@ static int shinkos2145_query_serno(struct libusb_device_handle *dev, uint8_t end struct dyesub_backend shinkos2145_backend = { .name = "Shinko/Sinfonia CHC-S2145", - .version = "0.46", + .version = "0.48", .uri_prefix = "shinkos2145", .cmdline_usage = shinkos2145_cmdline, .cmdline_arg = shinkos2145_cmdline_arg, diff --git a/src/cups/shinko_s6145_print.c b/src/cups/backend_shinkos6145.c index ee5a45a..692a42c 100644 --- a/src/cups/shinko_s6145_print.c +++ b/src/cups/backend_shinkos6145.c @@ -1,7 +1,7 @@ /* * Shinko/Sinfonia CHC-S6145 CUPS backend -- libusb-1.0 version * - * (c) 2013-2015 Solomon Peachy <pizza@shaftnet.org> + * (c) 2015-2016 Solomon Peachy <pizza@shaftnet.org> * * Low-level documentation was provided by Sinfonia. Thank you! * @@ -32,11 +32,8 @@ * * You must still adhere to all other terms of the license to this program * (ie GPLv2) and the license of the libS6145ImageProcess library. - * - * Please note that the authors of this program *do not* have permission to - * redistribute this library, which was provided only in binary form. - * - * */ + * + */ #include <stdio.h> #include <stdlib.h> @@ -50,14 +47,44 @@ #include <signal.h> #include <time.h> +/* For Integration into gutenprint */ +#if defined(HAVE_CONFIG_H) +#include <config.h> +#endif + +#if defined(USE_DLOPEN) +#define WITH_DYNAMIC +#include <dlfcn.h> +#define DL_INIT() do {} while(0) +#define DL_OPEN(__x) dlopen(__x, RTLD_NOW) +#define DL_SYM(__x, __y) dlsym(__x, __y) +#define DL_CLOSE(__x) dlclose(__x) +#define DL_EXIT() do {} while(0) +#elif defined(USE_LTDL) +#define WITH_DYNAMIC +#include <ltdl.h> +#define DL_INIT() lt_dlinit() +#define DL_OPEN(__x) lt_dlopen(__x) +#define DL_SYM(__x, __y) lt_dlsym(__x, __y) +#define DL_CLOSE(__x) do {} while(0) +#define DL_EXIT() lt_dlexit() +#else +#define DL_INIT() do {} while(0) +#define DL_CLOSE(__x) do {} while(0) +#define DL_EXIT() do {} while(0) +#warning "No dynamic loading support!" +#endif + #define BACKEND shinkos6145_backend #include "backend_common.h" -#if defined(WITH_6145_LIB) -/* Note that this is a proprietary library, and *NOT* GPL compatible! */ -#include "libS6145ImageProcess.h" -#endif +/* Image processing library function prototypes */ +typedef int (*ImageProcessingFN)(unsigned char *, unsigned short *, void *); +typedef int (*ImageAvrCalcFN)(unsigned char *, unsigned short, unsigned short, unsigned char *); + +#define LIB_NAME "libS6145ImageProcess.so" // Official library +#define LIB_NAME_RE "libS6145ImageReProcess.so" // Reimplemented library enum { S_IDLE = 0, @@ -248,11 +275,25 @@ struct shinkos6145_ctx { uint8_t *databuf; size_t datalen; + uint8_t ribbon_type; + + uint16_t last_donor; + uint16_t last_remain; + uint16_t last_ribbon; + + uint8_t *eeprom; + size_t eepromlen; + + void *dl_handle; + ImageProcessingFN ImageProcessing; + ImageAvrCalcFN ImageAvrCalc; + struct shinkos6145_correctionparam *corrdata; size_t corrdatalen; }; static int shinkos6145_get_imagecorr(struct shinkos6145_ctx *ctx); +static int shinkos6145_get_eeprom(struct shinkos6145_ctx *ctx); /* Structs for printer */ struct s6145_cmd_hdr { @@ -831,13 +872,13 @@ struct s6145_status_resp { uint32_t count_head; uint32_t count_ribbon_left; uint32_t reserved; - + uint8_t bank1_printid; uint16_t bank1_remaining; uint16_t bank1_finished; uint16_t bank1_specified; uint8_t bank1_status; - + uint8_t bank2_printid; uint16_t bank2_remaining; uint16_t bank2_finished; @@ -846,7 +887,7 @@ struct s6145_status_resp { uint8_t reserved2[16]; uint8_t tonecurve_status; - uint8_t reserved3[6]; + uint8_t reserved3[6]; } __attribute__((packed)); #define BANK_STATUS_FREE 0x00 @@ -914,8 +955,14 @@ struct s6145_mediainfo_item { #define MEDIA_6x8 0x06 #define MEDIA_2x6 0x07 #define MEDIA_6x6 0x08 - -static char *print_medias (uint8_t v) { +#define MEDIA_89x60mm 0x10 +#define MEDIA_89x59mm 0x11 +#define MEDIA_89x58mm 0x12 +#define MEDIA_89x57mm 0x13 +#define MEDIA_89x56mm 0x14 +#define MEDIA_89x55mm 0x15 + +static char *print_sizes (uint8_t v) { switch (v) { case MEDIA_4x6: return "4x6"; @@ -931,6 +978,18 @@ static char *print_medias (uint8_t v) { return "2x6"; case MEDIA_6x6: return "6x6"; + case MEDIA_89x60mm: + return "89x60mm"; + case MEDIA_89x59mm: + return "89x59mm"; + case MEDIA_89x58mm: + return "89x58mm"; + case MEDIA_89x57mm: + return "89x57mm"; + case MEDIA_89x56mm: + return "89x56mm"; + case MEDIA_89x55mm: + return "89x55mm"; default: return "Unknown"; } @@ -942,8 +1001,27 @@ static char *print_medias (uint8_t v) { #define RIBBON_5x7 0x03 #define RIBBON_6x8 0x04 #define RIBBON_6x9 0x05 +// XXX what about 89xXXXmm ribbons? -static char *print_ribbons (uint8_t v) { +static int ribbon_sizes (uint8_t v) { + switch (v) { + case RIBBON_4x6: + return 300; + case RIBBON_3_5x5: + return 340; + case RIBBON_5x7: + return 170; + case RIBBON_6x8: + return 150; + case RIBBON_6x9: + return 130; // XXX guessed + // XXX 89x??? rubbons. + default: + return 300; // don't want 0. + } +} + +static const char *print_ribbons (uint8_t v) { switch (v) { case RIBBON_NONE: return "None"; @@ -957,6 +1035,7 @@ static char *print_ribbons (uint8_t v) { return "6x8"; case RIBBON_6x9: return "6x9"; + // XXX 89x??? rubbons. default: return "Unknown"; } @@ -1126,7 +1205,7 @@ static int get_status(struct shinkos6145_ctx *ctx) le16_to_cpu(resp->bank1_specified), le16_to_cpu(resp->bank1_remaining)); - INFO("Bank 2: 0x%02x (%s) Job %03d @ %03d/%03d (%03d remaining)\n", + INFO("Bank 2: 0x%02x (%s) Job %03u @ %03u/%03u (%03u remaining)\n", resp->bank2_status, bank_statuses(resp->bank1_status), resp->bank2_printid, le16_to_cpu(resp->bank2_finished), @@ -1149,11 +1228,19 @@ static int get_status(struct shinkos6145_ctx *ctx) if (le16_to_cpu(resp2->hdr.payload_len) != (sizeof(struct s6145_getextcounter_resp) - sizeof(struct s6145_status_hdr))) return -1; - INFO("Lifetime Distance: %08d inches\n", le32_to_cpu(resp2->lifetime_distance)); - INFO("Maintainence Distance: %08d inches\n", le32_to_cpu(resp2->maint_distance)); - INFO("Head Distance: %08d inches\n", le32_to_cpu(resp2->head_distance)); + INFO("Lifetime Distance: %08u inches\n", le32_to_cpu(resp2->lifetime_distance)); + INFO("Maintainence Distance: %08u inches\n", le32_to_cpu(resp2->maint_distance)); + INFO("Head Distance: %08u inches\n", le32_to_cpu(resp2->head_distance)); /* Query various params */ + if(ctx->type == P_SHINKO_S6145D) { + if ((ret = get_param(ctx, PARAM_REGION_CODE, &val))) { + ERROR("Failed to execute command\n"); + return ret; + } + INFO("Region Code: %#x\n", val); + + } if ((ret = get_param(ctx, PARAM_PAPER_PRESV, &val))) { ERROR("Failed to execute command\n"); return ret; @@ -1257,7 +1344,7 @@ static int get_errorlog(struct shinkos6145_ctx *ctx) if (le16_to_cpu(resp->hdr.payload_len) != (sizeof(struct s6145_errorlog_resp) - sizeof(struct s6145_status_hdr))) return -2; - INFO("Stored Error Events: %d entries:\n", resp->count); + INFO("Stored Error Events: %u entries:\n", resp->count); for (i = 0 ; i < resp->count ; i++) { INFO(" %02d: @ %08u prints : 0x%02x/0x%02x (%s)\n", i, le32_to_cpu(resp->items[i].print_counter), @@ -1284,17 +1371,17 @@ static int get_mediainfo(struct shinkos6145_ctx *ctx) ERROR("Failed to execute %s command\n", cmd_names(cmd.cmd)); return ret; } - + if (le16_to_cpu(resp->hdr.payload_len) != (sizeof(struct s6145_mediainfo_resp) - sizeof(struct s6145_status_hdr))) return -2; INFO("Loaded Media Type: %s\n", print_ribbons(resp->ribbon)); - INFO("Supported Print Sizes: %d entries:\n", resp->count); + INFO("Supported Print Sizes: %u entries:\n", resp->count); for (i = 0 ; i < resp->count ; i++) { - INFO(" %02d: C 0x%02x (%s), %04dx%04d, P 0x%02x (%s)\n", i, - resp->items[i].media_code, print_medias(resp->items[i].media_code), + INFO(" %02d: C 0x%02x (%s), %04ux%04u, P 0x%02x (%s)\n", i, + resp->items[i].media_code, print_sizes(resp->items[i].media_code), le16_to_cpu(resp->items[i].columns), - le16_to_cpu(resp->items[i].rows), + le16_to_cpu(resp->items[i].rows), resp->items[i].print_method, print_methods(resp->items[i].print_method)); } return 0; @@ -1445,6 +1532,36 @@ static int shinkos6145_dump_corrdata(struct shinkos6145_ctx *ctx, char *fname) return ret; } +static int shinkos6145_dump_eeprom(struct shinkos6145_ctx *ctx, char *fname) +{ + int ret; + + ret = shinkos6145_get_eeprom(ctx); + if (ret) { + ERROR("Failed to execute command\n"); + return ret; + } + + /* Open file and write it out */ + { + int fd = open(fname, O_WRONLY|O_CREAT, S_IRUSR|S_IWUSR); + if (fd < 0) { + ERROR("Unable to open filename\n"); + return fd; + } + + write(fd, ctx->eeprom, ctx->eepromlen); + close(fd); + } + + /* Free the buffers */ + free(ctx->eeprom); + ctx->eeprom = NULL; + ctx->eepromlen = 0; + + return ret; +} + static int get_tonecurve(struct shinkos6145_ctx *ctx, int type, char *fname) { struct s6145_readtone_cmd cmd; @@ -1607,7 +1724,7 @@ static int shinkos6145_get_imagecorr(struct shinkos6145_ctx *ctx) } ctx->corrdatalen = le16_to_cpu(resp->total_size); - INFO("Fetching %lu bytes of image correction data\n", ctx->corrdatalen); + INFO("Fetching %zu bytes of image correction data\n", ctx->corrdatalen); ctx->corrdata = malloc(sizeof(struct shinkos6145_correctionparam)); if (!ctx->corrdata) { @@ -1631,68 +1748,45 @@ static int shinkos6145_get_imagecorr(struct shinkos6145_ctx *ctx) total += sizeof(data.data); if (data.remain_pkt == 0) - DEBUG("correction block transferred (%lu/%lu total)\n", total, ctx->corrdatalen); + DEBUG("correction block transferred (%zu/%zu total)\n", total, ctx->corrdatalen); } -#if !defined(WITH_6145_LIB) - /* Sanity check correction data */ - { - int i; - struct shinkos6145_correctionparam *corrdata = ctx->corrdata; - - for (i = 0 ; i < 256 ; i++) { - if (le16_to_cpu(corrdata->pulseTransTable_Y[i]) > le16_to_cpu(corrdata->printMaxPulse_Y) || - le16_to_cpu(corrdata->pulseTransTable_M[i]) > le16_to_cpu(corrdata->printMaxPulse_M) || - le16_to_cpu(corrdata->pulseTransTable_C[i]) > le16_to_cpu(corrdata->printMaxPulse_C) || - le16_to_cpu(corrdata->pulseTransTable_O[i]) > le16_to_cpu(corrdata->printMaxPulse_O)) { - ret = -10; - goto done; - } - } - if (!corrdata->tableTankParam_Y.trdTankSize || - !corrdata->tableTankParam_M.trdTankSize || - !corrdata->tableTankParam_C.trdTankSize || - !corrdata->tableTankParam_O.trdTankSize) { - ret = -14; - goto done; - } - if (!corrdata->tableTankParam_Y.sndTankSize || - !corrdata->tableTankParam_M.sndTankSize || - !corrdata->tableTankParam_C.sndTankSize || - !corrdata->tableTankParam_O.sndTankSize) { - ret = -15; - goto done; - } - if (!corrdata->tableTankParam_Y.fstTankSize || - !corrdata->tableTankParam_M.fstTankSize || - !corrdata->tableTankParam_C.fstTankSize || - !corrdata->tableTankParam_O.fstTankSize) { - ret = -16; - goto done; - } - if (corrdata->val_1 > 1 || - corrdata->val_2 > 1 || - corrdata->printOpLevel > 0xff || - corrdata->matteMode > 1) { - ret = -17; - goto done; - } - if (corrdata->randomBase[0] > 0xff || - corrdata->randomBase[1] > 0xff || - corrdata->randomBase[2] > 0xff || - corrdata->randomBase[3] > 0xff) { - ret = -18; - goto done; - } - if (!corrdata->matteSize || - corrdata->matteSize > 2) { - ret = -19; - goto done; - } +done: + return ret; +} + +static int shinkos6145_get_eeprom(struct shinkos6145_ctx *ctx) +{ + struct s6145_cmd_hdr cmd; + struct s6145_geteeprom_resp *resp = (struct s6145_geteeprom_resp *) rdbuf; + + int ret, num; + cmd.cmd = cpu_to_le16(S6145_CMD_GETEEPROM); + cmd.len = 0; + + if (ctx->eeprom) { + free(ctx->eeprom); + ctx->eeprom = NULL; + } + + if ((ret = s6145_do_cmd(ctx, + (uint8_t*)&cmd, sizeof(cmd), + sizeof(*resp), + &num)) < 0) { + ERROR("Failed to execute %s command\n", cmd_names(cmd.cmd)); + goto done; } -#endif + + ctx->eepromlen = le16_to_cpu(resp->hdr.payload_len); + ctx->eeprom = malloc(ctx->eepromlen); + if (!ctx->eeprom) { + ERROR("Memory allocation failure\n"); + ret = -ENOMEM; + goto done; + } + memcpy(ctx->eeprom, resp->data, ctx->eepromlen); done: return ret; @@ -1709,6 +1803,7 @@ static void shinkos6145_cmdline(void) DEBUG("\t\t[ -l filename ] # Get current tone curve\n"); DEBUG("\t\t[ -L filename ] # Set current tone curve\n"); DEBUG("\t\t[ -m ] # Query media\n"); + DEBUG("\t\t[ -q filename ] # Extract eeprom data\n"); DEBUG("\t\t[ -Q filename ] # Extract image correction params\n"); DEBUG("\t\t[ -r ] # Reset user/NV tone curve\n"); DEBUG("\t\t[ -R ] # Reset printer to factory defaults\n"); @@ -1724,7 +1819,7 @@ int shinkos6145_cmdline_arg(void *vctx, int argc, char **argv) if (!ctx) return -1; - while ((i = getopt(argc, argv, GETOPT_LIST_GLOBAL "c:C:eFik:l:L:mr:Q:R:sX:")) >= 0) { + while ((i = getopt(argc, argv, GETOPT_LIST_GLOBAL "c:C:eFik:l:L:mr:Q:q:R:sX:")) >= 0) { switch(i) { GETOPT_PROCESS_GLOBAL case 'c': @@ -1744,17 +1839,17 @@ int shinkos6145_cmdline_arg(void *vctx, int argc, char **argv) break; case 'k': { uint32_t i = atoi(optarg); - if (i < 5) + if (i <= 5) i = 0; - else if (i < 15) + else if (i <= 15) i = 1; - else if (i < 30) + else if (i <= 30) i = 2; - else if (i < 60) + else if (i <= 60) i = 3; - else if (i < 120) + else if (i <= 120) i = 4; - else if (i < 240) + else if (i <= 240) i = 5; else i = 5; @@ -1771,6 +1866,9 @@ int shinkos6145_cmdline_arg(void *vctx, int argc, char **argv) case 'm': j = get_mediainfo(ctx); break; + case 'q': + j = shinkos6145_dump_eeprom(ctx, optarg); + break; case 'Q': j = shinkos6145_dump_corrdata(ctx, optarg); break; @@ -1805,6 +1903,8 @@ static void *shinkos6145_init(void) } memset(ctx, 0, sizeof(struct shinkos6145_ctx)); + DL_INIT(); + return ctx; } @@ -1824,9 +1924,35 @@ static void shinkos6145_attach(void *vctx, struct libusb_device_handle *dev, ctx->type = lookup_printer_type(&shinkos6145_backend, desc.idVendor, desc.idProduct); - + + /* Attempt to open the library */ +#if defined(WITH_DYNAMIC) + INFO("Attempting to load image processing library\n"); + ctx->dl_handle = DL_OPEN(LIB_NAME); /* Try the Sinfonia one first */ + if (!ctx->dl_handle) + ctx->dl_handle = DL_OPEN(LIB_NAME_RE); /* Then the RE one */ + if (!ctx->dl_handle) + WARNING("Image processing library not found, using internal fallback code\n"); + if (ctx->dl_handle) { + ctx->ImageProcessing = DL_SYM(ctx->dl_handle, "ImageProcessing"); + ctx->ImageAvrCalc = DL_SYM(ctx->dl_handle, "ImageAvrCalc"); + if (!ctx->ImageProcessing || !ctx->ImageAvrCalc) { + WARNING("Problem resolving symbols in imaging processing library\n"); + DL_CLOSE(ctx->dl_handle); + ctx->dl_handle = NULL; + } else { + INFO("Image processing library successfully loaded\n"); + } + } +#else + WARNING("Dynamic library support not enabled, using internal fallback code\n"); +#endif + /* Ensure jobid is sane */ ctx->jobid = (jobid & 0x7f) + 1; + + /* Initialize donor */ + ctx->last_donor = ctx->last_remain = 65535; } static void shinkos6145_teardown(void *vctx) { @@ -1837,13 +1963,18 @@ static void shinkos6145_teardown(void *vctx) { if (ctx->databuf) free(ctx->databuf); + if (ctx->eeprom) + free(ctx->eeprom); if (ctx->corrdata) free(ctx->corrdata); + if (ctx->dl_handle) + DL_CLOSE(ctx->dl_handle); + DL_EXIT(); + free(ctx); } -#if !defined (WITH_6145_LIB) static void lib6145_calc_avg(struct shinkos6145_ctx *ctx, uint16_t rows, uint16_t cols) { uint32_t plane, i, planelen; @@ -1917,8 +2048,7 @@ static void lib6145_process_image(uint8_t *src, uint16_t *dest, /* Generate lamination plane, if desired */ if (oc_mode > PRINT_MODE_NO_OC) { - // XXX matters if we're using glossy/matte.. - // or should we just dump over the contents of the "raw" file? + // XXX matters if we're using glossy/matte... for (row = 0 ; row < le16_to_cpu(corrdata->height) ; row++) { for (col = 0 ; col < row_lim; col++) { uint16_t val; @@ -1934,8 +2064,6 @@ static void lib6145_process_image(uint8_t *src, uint16_t *dest, } } } -#endif - static int shinkos6145_read_parse(void *vctx, int data_fd) { struct shinkos6145_ctx *ctx = vctx; @@ -1964,11 +2092,11 @@ static int shinkos6145_read_parse(void *vctx, int data_fd) { } if (le32_to_cpu(ctx->hdr.model) != 6145) { - ERROR("Unrecognized printer (%d)!\n", le32_to_cpu(ctx->hdr.model)); + ERROR("Unrecognized printer (%u)!\n", le32_to_cpu(ctx->hdr.model)); return CUPS_BACKEND_CANCEL; } - + if (ctx->databuf) { free(ctx->databuf); ctx->databuf = NULL; @@ -2044,7 +2172,7 @@ static int shinkos6145_main_loop(void *vctx, int copies) { ERROR("Failed to execute %s command\n", cmd_names(cmd->cmd)); return CUPS_BACKEND_FAILED; } - + if (le16_to_cpu(media->hdr.payload_len) != (sizeof(struct s6145_mediainfo_resp) - sizeof(struct s6145_status_hdr))) return CUPS_BACKEND_FAILED; @@ -2061,10 +2189,18 @@ static int shinkos6145_main_loop(void *vctx, int copies) { ERROR("Incorrect media loaded for print!\n"); return CUPS_BACKEND_HOLD; } - // XXX sanity-check media vs size - // don't know if media information above will catch this. - // XXX check copies against remaining media! + ctx->last_ribbon = media->ribbon; + + /* Tell CUPS about the consumables we report */ + ATTR("marker-colors=#00FFFF#FF00FF#FFFF00\n"); + ATTR("marker-high-levels=100\n"); + ATTR("marker-low-levels=10\n"); + ATTR("marker-names='%s'\n", print_ribbons(media->ribbon)); + ATTR("marker-types=ribbonWax\n"); + ctx->ribbon_type = media->ribbon; + + // XXX check copies against remaining media? /* Query printer mode */ ret = get_param(ctx, PARAM_OC_PRINT, &cur_mode); @@ -2072,7 +2208,7 @@ static int shinkos6145_main_loop(void *vctx, int copies) { ERROR("Failed to execute command\n"); return ret; } - + top: if (state != last_state) { if (dyesub_debug) @@ -2093,21 +2229,36 @@ top: } if (memcmp(rdbuf, rdbuf2, READBACK_LEN)) { + uint16_t donor, remain; + memcpy(rdbuf2, rdbuf, READBACK_LEN); INFO("Printer Status: 0x%02x (%s)\n", sts->hdr.status, status_str(sts->hdr.status)); + + /* Guessimate a percentage for the remaining media */ + donor = le32_to_cpu(sts->count_ribbon_left) * 100 / ribbon_sizes(ctx->ribbon_type); + if (donor != ctx->last_donor) { + ctx->last_donor = donor; + ATTR("marker-levels=%d\n", donor); + } + remain = le32_to_cpu(sts->count_ribbon_left); + if (remain != ctx->last_remain) { + ctx->last_remain = remain; + ATTR("marker-message=\"%d prints remaining on '%s' ribbon\"\n", remain, print_ribbons(media->ribbon)); + } + if (sts->hdr.result != RESULT_SUCCESS) goto printer_error; if (sts->hdr.status == ERROR_PRINTER) - goto printer_error; + goto printer_error; } else if (state == last_state) { sleep(1); goto top; } last_state = state; - fflush(stderr); + fflush(stderr); switch (state) { case S_IDLE: @@ -2119,8 +2270,6 @@ top: break; case S_PRINTER_READY_CMD: { - // XXX send "get eeprom backup command" ? - /* Set matte/etc */ uint32_t oc_mode = le32_to_cpu(ctx->hdr.oc_mode); @@ -2147,6 +2296,12 @@ top: updated = 1; } + ret = shinkos6145_get_eeprom(ctx); + if (ret) { + ERROR("Failed to execute command\n"); + return ret; + } + /* Get image correction parameters if necessary */ if (updated || !ctx->corrdata || !ctx->corrdatalen) { ret = shinkos6145_get_imagecorr(ctx); @@ -2166,6 +2321,8 @@ top: ctx->corrdata->height = cpu_to_le16(le32_to_cpu(ctx->hdr.rows)); /* Convert packed RGB to planar YMC */ + // XXX would it make more sense to have Gutenprint generate + // planar YMC data as an extension of the spooler format? { int planelen = le16_to_cpu(ctx->corrdata->width) * le16_to_cpu(ctx->corrdata->height); uint8_t *databuf3 = malloc(ctx->datalen); @@ -2184,29 +2341,27 @@ top: } /* Perform the actual library transform */ -#if defined(WITH_6145_LIB) -#if defined(S6145_RE) - INFO("Calling Reverse-Engineered Image Processing Library...\n"); -#else - INFO("Calling Sinfonia Image Processing Library...\n"); -#endif - if (ImageAvrCalc(ctx->databuf, le32_to_cpu(ctx->hdr.columns), le32_to_cpu(ctx->hdr.rows), ctx->image_avg)) { - ERROR("Library returned error!\n"); - return CUPS_BACKEND_FAILED; - } + if (ctx->dl_handle) { + INFO("Calling image processing library...\n"); - ImageProcessing(ctx->databuf, databuf2, ctx->corrdata); -#else - INFO("Calling Internal Fallback Image Processing Library...\n"); + if (ctx->ImageAvrCalc(ctx->databuf, le32_to_cpu(ctx->hdr.columns), le32_to_cpu(ctx->hdr.rows), ctx->image_avg)) { + ERROR("Library returned error!\n"); + return CUPS_BACKEND_FAILED; + } + ctx->ImageProcessing(ctx->databuf, databuf2, ctx->corrdata); + } else { + WARNING("Utilizing fallback internal image processing code\n"); + WARNING(" *** Output quality will be poor! *** \n"); - lib6145_calc_avg(ctx, le32_to_cpu(ctx->hdr.columns), le32_to_cpu(ctx->hdr.rows)); - lib6145_process_image(ctx->databuf, databuf2, ctx->corrdata, oc_mode); -#endif + lib6145_calc_avg(ctx, le32_to_cpu(ctx->hdr.columns), le32_to_cpu(ctx->hdr.rows)); + lib6145_process_image(ctx->databuf, databuf2, ctx->corrdata, oc_mode); + } + free(ctx->databuf); ctx->databuf = (uint8_t*) databuf2; ctx->datalen = newlen; - INFO("Initiating print job (internal id %d)\n", ctx->jobid); + INFO("Sending print job (internal id %u)\n", ctx->jobid); memset(cmdbuf, 0, CMDBUF_LEN); print->hdr.cmd = cpu_to_le16(S6145_CMD_PRINTJOB); @@ -2246,6 +2401,8 @@ top: } INFO("Sending image data to printer\n"); + // XXX we shouldn't send the lamination layer over if + // it's not needed. hdr->oc_mode == PRINT_MODE_NO_OC if ((ret = send_data(ctx->dev, ctx->endp_down, ctx->databuf, ctx->datalen))) return CUPS_BACKEND_FAILED; @@ -2326,7 +2483,7 @@ static int shinkos6145_query_serno(struct libusb_device_handle *dev, uint8_t end struct dyesub_backend shinkos6145_backend = { .name = "Shinko/Sinfonia CHC-S6145", - .version = "0.14WIP", + .version = "0.21", .uri_prefix = "shinkos6145", .cmdline_usage = shinkos6145_cmdline, .cmdline_arg = shinkos6145_cmdline_arg, @@ -2343,7 +2500,7 @@ struct dyesub_backend shinkos6145_backend = { } }; -/* CHC-S6145 data format +/* CHC-S6145 spool file format Spool file consists of an 116-byte header, followed by RGB-packed data, followed by a 4-byte footer. Header appears to consist of a series of @@ -2362,31 +2519,4 @@ struct dyesub_backend shinkos6145_backend = { 04 03 02 01 [[ footer ]] - * CIAAT Brava 21 data format - - This printer is supposed to be a variant of the S6145, but uses a - different spool format -- but seems to use the same command language. - - 01 40 12 00 II NN NN YY YY XX XX TT 00 00 00 00 00 00 01 MM QQ ZZ - - II == Job ID (01-255, backend fills) - NN NN == copies (LE) - YY YY == Columns (LE) - XX XX == Rows (LE) - MM == Overcoat (02 = glossy, 03 = matte, 01 = none) - TT == Type (00 = 4x6, 03 = 5x7, 06 = 8x6, 07 = 2x6) - QQ == Multicut (00 = normal, 01 = none, 02 = 2*4x6, - 04 = 2*2x6, 80 = 4x6-notrim) - ZZ == Cyan Average (backend fills) - - 1844*2434 8x6 - 1844*2492 4x6*2 - 1548*2140 5x7 - 1844*1240 4x6 (and 2x6*2) - 1844*1210 4x6-notrim (WTF?) - 1844*634 2x6 - - - [[ Followed by XX*YY*3 bytes of image data, RGB ]] - */ diff --git a/src/cups/shinko_s6245_print.c b/src/cups/backend_shinkos6245.c index e4b57e9..b5b1c2b 100644 --- a/src/cups/shinko_s6245_print.c +++ b/src/cups/backend_shinkos6245.c @@ -1,7 +1,7 @@ /* * Shinko/Sinfonia CHC-S6245 CUPS backend -- libusb-1.0 version * - * (c) 2013-2015 Solomon Peachy <pizza@shaftnet.org> + * (c) 2015-2016 Solomon Peachy <pizza@shaftnet.org> * * Low-level documentation was provided by Sinfonia, Inc. Thank you! * @@ -103,6 +103,10 @@ struct shinkos6245_ctx { uint8_t *databuf; int datalen; + + uint16_t last_donor; + uint16_t last_remain; + uint8_t ribbon_code; }; /* Structs for printer */ @@ -517,7 +521,7 @@ static char *error_codes(uint8_t major, uint8_t minor) return "Paper Jam: Precut Print Position Off"; case 0x20: return "Paper Jam: Precut Print Position On"; - + case 0x29: return "Paper Jam: Printing Paper Top On"; case 0x2A: @@ -700,13 +704,13 @@ struct s6245_status_resp { uint32_t count_head; uint32_t count_ribbon_left; uint32_t reserved; - + uint8_t bank1_printid; uint16_t bank1_remaining; uint16_t bank1_finished; uint16_t bank1_specified; uint8_t bank1_status; - + uint8_t bank2_printid; uint16_t bank2_remaining; uint16_t bank2_finished; @@ -715,7 +719,7 @@ struct s6245_status_resp { uint8_t reserved2[16]; uint8_t tonecurve_status; - uint8_t reserved3[6]; + uint8_t reserved3[6]; } __attribute__((packed)); #define BANK_STATUS_FREE 0x00 @@ -787,7 +791,7 @@ struct s6245_mediainfo_item { #define MEDIA_8x6_2 0x32 #define MEDIA_8x4_3 0x40 -static char *print_medias (uint8_t v) { +static const char *print_sizes (uint8_t v) { switch (v) { case MEDIA_8x10: return "8x10"; @@ -816,10 +820,36 @@ static char *print_medias (uint8_t v) { struct s6245_mediainfo_resp { struct s6245_status_hdr hdr; - uint8_t count; + uint8_t ribbon_code; + uint8_t reserved; + uint8_t count; struct s6245_mediainfo_item items[10]; /* Not all necessarily used */ } __attribute__((packed)); +static const char *ribbon_sizes (uint8_t v) { + switch (v) { + case 0x00: + return "None"; + case 0x11: + return "8x10"; + case 0x12: + return "8x12"; + default: + return "Unknown"; + } +} + +static int ribbon_counts (uint8_t v) { + switch (v) { + case 0x11: + return 120; + case 0x12: + return 100; + default: + return 120; + } +} + struct s6245_errorlog_resp { struct s6245_status_hdr hdr; uint16_t error_count; @@ -899,7 +929,7 @@ struct s6245_fwinfo_resp { #define READBACK_LEN 512 /* Needs to be larger than largest response hdr */ #define CMDBUF_LEN sizeof(struct s6245_print_cmd) -uint8_t rdbuf[READBACK_LEN]; +static uint8_t rdbuf[READBACK_LEN]; static int s6245_do_cmd(struct shinkos6245_ctx *ctx, uint8_t *cmd, int cmdlen, @@ -984,7 +1014,7 @@ static int get_status(struct shinkos6245_ctx *ctx) le16_to_cpu(resp->bank1_specified), le16_to_cpu(resp->bank1_remaining)); - INFO("Bank 2: 0x%02x (%s) Job %03d @ %03d/%03d (%03d remaining)\n", + INFO("Bank 2: 0x%02x (%s) Job %03u @ %03u/%03u (%03u remaining)\n", resp->bank2_status, bank_statuses(resp->bank1_status), resp->bank2_printid, le16_to_cpu(resp->bank2_finished), @@ -1007,9 +1037,9 @@ static int get_status(struct shinkos6245_ctx *ctx) if (le16_to_cpu(resp2->hdr.payload_len) != (sizeof(struct s6245_getextcounter_resp) - sizeof(struct s6245_status_hdr))) return 0; - INFO("Lifetime Distance: %08d inches\n", le32_to_cpu(resp2->lifetime_distance)); - INFO("Maintainence Distance: %08d inches\n", le32_to_cpu(resp2->maint_distance)); - INFO("Head Distance: %08d inches\n", le32_to_cpu(resp2->head_distance)); + INFO("Lifetime Distance: %08u inches\n", le32_to_cpu(resp2->lifetime_distance)); + INFO("Maintainence Distance: %08u inches\n", le32_to_cpu(resp2->maint_distance)); + INFO("Head Distance: %08u inches\n", le32_to_cpu(resp2->head_distance)); return 0; } @@ -1080,13 +1110,13 @@ static int get_errorlog(struct shinkos6245_ctx *ctx) return -2; INFO("Stored Error ID %d:\n", i); - INFO(" %04d-%02d-%02d %02d:%02d:%02d @ %08u prints : 0x%02x/0x%02x (%s)\n", + INFO(" %04d-%02u-%02u %02u:%02u:%02u @ %08u prints : 0x%02x/0x%02x (%s)\n", resp->time_year + 2000, resp->time_month, resp->time_day, resp->time_hour, resp->time_min, resp->time_sec, le32_to_cpu(resp->print_counter), resp->error_major, resp->error_minor, error_codes(resp->error_major, resp->error_minor)); - INFO(" Temp: %02d/%02d Hum: %02d\n", + INFO(" Temp: %02u/%02u Hum: %02u\n", resp->printer_thermistor, resp->head_thermistor, resp->printer_humidity); } while (++i < le16_to_cpu(resp->error_count)); @@ -1110,14 +1140,15 @@ static int get_mediainfo(struct shinkos6245_ctx *ctx) ERROR("Failed to execute %s command\n", cmd_names(cmd.cmd)); return ret; } - + if (le16_to_cpu(resp->hdr.payload_len) != (sizeof(struct s6245_mediainfo_resp) - sizeof(struct s6245_status_hdr))) return -2; - INFO("Supported Media Information: %d entries:\n", resp->count); + INFO("Loaded Media Type: %s\n", ribbon_sizes(resp->ribbon_code)); + INFO("Supported Media Information: %u entries:\n", resp->count); for (i = 0 ; i < resp->count ; i++) { - INFO(" %02d: C 0x%02x (%s), %04dx%04d, P 0x%02x (%s)\n", i, - resp->items[i].media_code, print_medias(resp->items[i].media_code), + INFO(" %02d: C 0x%02x (%s), %04ux%04u, P 0x%02x (%s)\n", i, + resp->items[i].media_code, print_sizes(resp->items[i].media_code), le16_to_cpu(resp->items[i].columns), le16_to_cpu(resp->items[i].rows), resp->items[i].print_method, print_methods(resp->items[i].print_method)); @@ -1470,15 +1501,20 @@ static void shinkos6245_attach(void *vctx, struct libusb_device_handle *dev, ctx->dev = dev; ctx->endp_up = endp_up; ctx->endp_down = endp_down; - + device = libusb_get_device(dev); libusb_get_device_descriptor(device, &desc); - + ctx->type = lookup_printer_type(&shinkos6245_backend, desc.idVendor, desc.idProduct); /* Ensure jobid is sane */ - ctx->jobid = (jobid & 0x7f) + 1; + ctx->jobid = jobid & 0x7f; + if (!ctx->jobid) + ctx->jobid++; + + /* Initialize donor */ + ctx->last_donor = ctx->last_remain = 65535; } static void shinkos6245_teardown(void *vctx) { @@ -1520,7 +1556,7 @@ static int shinkos6245_read_parse(void *vctx, int data_fd) { } if (le32_to_cpu(ctx->hdr.model) != 6245) { - ERROR("Unrecognized printer (%d)!\n", le32_to_cpu(ctx->hdr.model)); + ERROR("Unrecognized printer (%u)!\n", le32_to_cpu(ctx->hdr.model)); return CUPS_BACKEND_CANCEL; } @@ -1635,6 +1671,7 @@ static int shinkos6245_main_loop(void *vctx, int copies) { ERROR("Incorrect media loaded for print!\n"); return CUPS_BACKEND_HOLD; } + ctx->ribbon_code = media->ribbon_code; /* Send Set Time */ { @@ -1664,6 +1701,13 @@ static int shinkos6245_main_loop(void *vctx, int copies) { goto printer_error; } + /* Tell CUPS about the consumables we report */ + ATTR("marker-colors=#00FFFF#FF00FF#FFFF00\n"); + ATTR("marker-high-levels=100\n"); + ATTR("marker-low-levels=10\n"); + ATTR("marker-names='%s'\n", ribbon_sizes(ctx->ribbon_code)); + ATTR("marker-types=ribbonWax\n"); + // XXX check copies against remaining media! top: @@ -1686,12 +1730,27 @@ top: } if (memcmp(rdbuf, rdbuf2, READBACK_LEN)) { + uint16_t donor, remain; + memcpy(rdbuf2, rdbuf, READBACK_LEN); INFO("Printer Status: 0x%02x (%s)\n", sts->hdr.status, status_str(sts->hdr.status)); + + /* Guessimate a percentage for the remaining media */ + donor = le32_to_cpu(sts->count_ribbon_left) * 100 / ribbon_counts(ctx->ribbon_code); + if (donor != ctx->last_donor) { + ctx->last_donor = donor; + ATTR("marker-levels=%d\n", donor); + } + remain = le32_to_cpu(sts->count_ribbon_left); + if (remain != ctx->last_remain) { + ctx->last_remain = remain; + ATTR("marker-message=\"%d prints remaining on '%s' ribbon\"\n", remain, ribbon_sizes(ctx->ribbon_code)); + } + if (sts->hdr.result != RESULT_SUCCESS) - goto printer_error; + goto printer_error; if (sts->hdr.error == ERROR_PRINTER) goto printer_error; } else if (state == last_state) { @@ -1700,11 +1759,22 @@ top: } last_state = state; - fflush(stderr); + fflush(stderr); switch (state) { case S_IDLE: INFO("Waiting for printer idle\n"); + + /* make sure we're not colliding with an existing + jobid */ + while (ctx->jobid == sts->bank1_printid || + ctx->jobid == sts->bank2_printid) { + ctx->jobid++; + ctx->jobid &= 0x7f; + if (!ctx->jobid) + ctx->jobid++; + } + /* If either bank is free, continue */ if (sts->bank1_status == BANK_STATUS_FREE || sts->bank2_status == BANK_STATUS_FREE) @@ -1714,7 +1784,7 @@ top: case S_PRINTER_READY_CMD: // XXX send "get eeprom backup command" - INFO("Initiating print job (internal id %d)\n", ctx->jobid); + INFO("Sending print job (internal id %u)\n", ctx->jobid); memset(cmdbuf, 0, CMDBUF_LEN); print->hdr.cmd = cpu_to_le16(S6245_CMD_PRINTJOB); @@ -1825,7 +1895,7 @@ static int shinkos6245_query_serno(struct libusb_device_handle *dev, uint8_t end struct dyesub_backend shinkos6245_backend = { .name = "Shinko/Sinfonia CHC-S6245", - .version = "0.04WIP", + .version = "0.07WIP", .uri_prefix = "shinkos6245", .cmdline_usage = shinkos6245_cmdline, .cmdline_arg = shinkos6245_cmdline_arg, diff --git a/src/cups/sony_updr150_print.c b/src/cups/backend_sonyupdr150.c index 0121443..be8423f 100644 --- a/src/cups/sony_updr150_print.c +++ b/src/cups/backend_sonyupdr150.c @@ -1,7 +1,7 @@ /* * Sony UP-DR150 Photo Printer CUPS backend -- libusb-1.0 version * - * (c) 2013-2015 Solomon Peachy <pizza@shaftnet.org> + * (c) 2013-2016 Solomon Peachy <pizza@shaftnet.org> * * The latest version of this program can be found at: * diff --git a/src/cups/blacklist b/src/cups/blacklist index b137624..573145e 100644 --- a/src/cups/blacklist +++ b/src/cups/blacklist @@ -159,5 +159,15 @@ # DNP DS-RX1 + Citizen CY 0x1343 0x0005 blacklist +# Citizen CW-02 +0x1343 0x0006 blacklist + +# DNP DS80D +0x1343 0x0007 blacklist + # DNP DS620 +0x1343 0x0008 blacklist 0x1452 0x8b01 blacklist + +# CIAAT Brava 21 +0x10ce 0x001e blacklist diff --git a/src/cups/command.types b/src/cups/command.types index 6b5f181..e03f094 100644 --- a/src/cups/command.types +++ b/src/cups/command.types @@ -1,6 +1,3 @@ -# -# "$Id: command.types,v 1.2 2007/12/23 17:31:51 easysw Exp $" -# # MIME types file for the CUPS drivers. # # Copyright 1993-2000 by Easy Software Products. @@ -22,7 +19,3 @@ # Define the new application/vnd.cups-command filetype... application/vnd.cups-command string(0,'#CUPS-COMMAND') - -# -# End of "$Id: command.types,v 1.2 2007/12/23 17:31:51 easysw Exp $". -# diff --git a/src/cups/commandtoepson.c b/src/cups/commandtoepson.c index e2d03b2..7706a04 100644 --- a/src/cups/commandtoepson.c +++ b/src/cups/commandtoepson.c @@ -1,6 +1,4 @@ /* - * "$Id: commandtoepson.c,v 1.4 2011/08/13 16:24:17 rlk Exp $" - * * EPSON ESC/P2 command filter for the Common UNIX Printing System. * * Copyright 1993-2000 by Easy Software Products. @@ -227,8 +225,3 @@ main(int argc, /* I - Number of command-line arguments */ return (0); } - - -/* - * End of "$Id: commandtoepson.c,v 1.4 2011/08/13 16:24:17 rlk Exp $". - */ diff --git a/src/cups/cups-calibrate.c b/src/cups/cups-calibrate.c index 28070b1..cc1c789 100644 --- a/src/cups/cups-calibrate.c +++ b/src/cups/cups-calibrate.c @@ -1,5 +1,4 @@ /* - * "$Id: cups-calibrate.c,v 1.6 2007/12/23 17:31:51 easysw Exp $" * * Super simple color calibration program for the Common UNIX * Printing System. @@ -95,14 +94,12 @@ main(int argc, puts("This program allows you to calibrate the color output of printers"); puts("using the Gutenprint CUPS or ESP Print Pro drivers."); puts(""); - puts("Please note that this program ONLY works with the Gutenprint CUPS or"); - puts("ESP Print Pro drivers. If you are using the Gimp-Print stp driver of"); - puts("GhostScript or the drivers of the Print plug-in for the GIMP, this"); - puts("calibration will not work."); + puts("Please note that this program ONLY works with the Gutenprint CUPS"); + puts("driver."); puts(""); - puts("These drivers by the text \"CUPS+Gutenprint\" or \"ESP Print Pro\" in"); - puts("the model description displayed by the CUPS web interface, KUPS,"); - puts("the ESP Print Pro Printer Manager, or printerdrake."); + puts("These drivers by the text \"CUPS+Gutenprint\""); + puts("the model description displayed by the CUPS web interface or"); + puts("similar tool."); puts(""); puts("If you are not using the correct driver, press CTRL+C now and"); puts("reinstall your printer queue with the appropriate driver first."); diff --git a/src/cups/cups-genppdupdate.in b/src/cups/cups-genppdupdate.in index 61b7206..fbfbc6b 100644 --- a/src/cups/cups-genppdupdate.in +++ b/src/cups/cups-genppdupdate.in @@ -1,5 +1,4 @@ #! @PERL@ -w -# $Id: cups-genppdupdate.in,v 1.61 2014/06/04 01:16:47 rlk Exp $ # Update CUPS PPDs for Gutenprint queues. # Copyright (C) 2002-2003 Roger Leigh (rleigh@debian.org) # diff --git a/src/cups/genppd.c b/src/cups/genppd.c index f026246..53b970d 100644 --- a/src/cups/genppd.c +++ b/src/cups/genppd.c @@ -1,6 +1,4 @@ /* - * "$Id: genppd.c,v 1.205 2015/10/17 16:27:18 rlk Exp $" - * * PPD file generation program for the CUPS drivers. * * Copyright 1993-2008 by Mike Sweet and Robert Krawitz. @@ -2739,8 +2737,3 @@ write_ppd( return (0); } - - -/* - * End of "$Id: genppd.c,v 1.205 2015/10/17 16:27:18 rlk Exp $". - */ diff --git a/src/cups/i18n.c b/src/cups/i18n.c index ee3e749..afe59a3 100644 --- a/src/cups/i18n.c +++ b/src/cups/i18n.c @@ -1,6 +1,4 @@ /* - * "$Id: i18n.c,v 1.9 2013/12/14 19:23:58 rlk Exp $" - * * Internationalization functions for CUPS drivers. * * Copyright 2008 Michael Sweet (mike@easysw.com) @@ -476,8 +474,3 @@ stpi_unquote(char *s) /* IO - Original string */ *d = '\0'; } - - -/* - * End of "$Id: i18n.c,v 1.9 2013/12/14 19:23:58 rlk Exp $". - */ diff --git a/src/cups/i18n.h b/src/cups/i18n.h index a75510b..222b2c3 100644 --- a/src/cups/i18n.h +++ b/src/cups/i18n.h @@ -1,6 +1,4 @@ /* - * "$Id: i18n.h,v 1.3 2009/04/11 19:05:12 rlk Exp $" - * * Internationalization definitions for CUPS drivers. * * Copyright 2008 Michael Sweet (mike@easysw.com) @@ -40,8 +38,3 @@ extern const char *stp_i18n_lookup(const stp_string_list_t *po, const char *message); extern void stp_i18n_printf(const stp_string_list_t *po, const char *message, ...); - - -/* - * End of "$Id: i18n.h,v 1.3 2009/04/11 19:05:12 rlk Exp $". - */ diff --git a/src/cups/mitsu70x_print.c b/src/cups/mitsu70x_print.c deleted file mode 100644 index 18b9218..0000000 --- a/src/cups/mitsu70x_print.c +++ /dev/null @@ -1,801 +0,0 @@ -/* - * Mitsubishi CP-D70/D707 Photo Printer CUPS backend -- libusb-1.0 version - * - * (c) 2013-2015 Solomon Peachy <pizza@shaftnet.org> - * - * The latest version of this program can be found at: - * - * http://git.shaftnet.org/cgit/selphy_print.git - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the Free - * Software Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY - * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - * - * [http://www.gnu.org/licenses/gpl-2.0.html] - * - */ - -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <unistd.h> - -#include <sys/types.h> -#include <sys/stat.h> -#include <fcntl.h> -#include <signal.h> - -#define BACKEND mitsu70x_backend - -#include "backend_common.h" - -#define USB_VID_MITSU 0x06D3 -#define USB_PID_MITSU_D70X 0x3B30 -#define USB_PID_MITSU_K60 0x3B31 -//#define USB_PID_MITSU_D80 XXXXXX -#define USB_VID_KODAK 0x040a -#define USB_PID_KODAK305 0x404f - -/* Private data stucture */ -struct mitsu70x_ctx { - struct libusb_device_handle *dev; - uint8_t endp_up; - uint8_t endp_down; - int type; - - uint8_t *databuf; - int datalen; - - uint16_t rows; - uint16_t cols; -}; - -/* Program states */ -enum { - S_IDLE = 0, - S_SENT_ATTN, - S_SENT_HDR, - S_SENT_DATA, - S_FINISHED, -}; - -/* Printer data structures */ -struct mitsu70x_state { - uint32_t hdr; - uint8_t data[22]; -} __attribute__((packed)); - -struct mitsu70x_status_deck { - uint16_t present; /* 0x80 for NOT present, 0x00 otherwise */ - uint16_t unk[9]; - uint16_t capacity; /* media capacity */ - uint16_t remain; /* media remaining */ - uint16_t unkb[2]; - uint16_t prints; /* lifetime prints on deck? */ - uint16_t unkc[1]; - uint16_t blank[16]; /* All fields are 0x8000 */ -} __attribute__((packed)); - -struct mitsu70x_status_ver { - char ver[6]; - uint8_t unk[2]; /* checksum? */ -} __attribute__((packed)); - -struct mitsu70x_status_resp { - uint8_t hdr[4]; - uint8_t unk[36]; - int16_t model[6]; /* LE, UTF-16 */ - int16_t serno[6]; /* LE, UTF-16 */ - struct mitsu70x_status_ver vers[7]; - uint8_t null[8]; - struct mitsu70x_status_deck lower; - struct mitsu70x_status_deck upper; -} __attribute__((packed)); - -struct mitsu70x_hdr { - uint32_t cmd; - uint8_t zero0[12]; - - uint16_t cols; - uint16_t rows; - uint16_t lamcols; - uint16_t lamrows; - uint8_t superfine; - uint8_t zero1[7]; - - uint8_t deck; - uint8_t zero2[7]; - uint8_t zero3; - uint8_t laminate; - uint8_t zero4[6]; - - uint8_t multicut; - uint8_t zero5[15]; - - uint8_t zero6[448]; -} __attribute__((packed)); - -#define CMDBUF_LEN 512 -#define READBACK_LEN 256 - -static void *mitsu70x_init(void) -{ - struct mitsu70x_ctx *ctx = malloc(sizeof(struct mitsu70x_ctx)); - if (!ctx) { - ERROR("Memory Allocation Failure!\n"); - return NULL; - } - memset(ctx, 0, sizeof(struct mitsu70x_ctx)); - - return ctx; -} - -static void mitsu70x_attach(void *vctx, struct libusb_device_handle *dev, - uint8_t endp_up, uint8_t endp_down, uint8_t jobid) -{ - struct mitsu70x_ctx *ctx = vctx; - struct libusb_device *device; - struct libusb_device_descriptor desc; - - UNUSED(jobid); - - ctx->dev = dev; - ctx->endp_up = endp_up; - ctx->endp_down = endp_down; - - device = libusb_get_device(dev); - libusb_get_device_descriptor(device, &desc); - - ctx->type = lookup_printer_type(&mitsu70x_backend, - desc.idVendor, desc.idProduct); -} - - -static void mitsu70x_teardown(void *vctx) { - struct mitsu70x_ctx *ctx = vctx; - - if (!ctx) - return; - - if (ctx->databuf) - free(ctx->databuf); - free(ctx); -} - -static int mitsu70x_read_parse(void *vctx, int data_fd) { - struct mitsu70x_ctx *ctx = vctx; - uint8_t hdr[1024]; - int i, remain; - struct mitsu70x_hdr *mhdr = (struct mitsu70x_hdr*)(hdr + sizeof(struct mitsu70x_hdr)); - - if (!ctx) - return CUPS_BACKEND_FAILED; - - if (ctx->databuf) { - free(ctx->databuf); - ctx->databuf = NULL; - } - - /* Read in initial header */ - remain = sizeof(hdr); - while (remain > 0) { - i = read(data_fd, hdr + sizeof(hdr) - remain, remain); - if (i == 0) - return CUPS_BACKEND_CANCEL; - if (i < 0) - return CUPS_BACKEND_CANCEL; - remain -= i; - } - - /* Sanity check */ - if (hdr[0] != 0x1b || - hdr[1] != 0x45 || - hdr[2] != 0x57 || - hdr[3] != 0x55) { - ERROR("Unrecognized data format!\n"); - return CUPS_BACKEND_CANCEL; - } - - /* Work out printjob size */ - ctx->cols = be16_to_cpu(mhdr->cols); - ctx->rows = be16_to_cpu(mhdr->rows); - - remain = ctx->rows * ctx->cols * 2; - remain = (remain + 511) / 512 * 512; /* Round to nearest 512 bytes. */ - remain *= 3; /* One for each plane */ - - if (mhdr->laminate) { - i = be16_to_cpu(mhdr->lamcols) * be16_to_cpu(mhdr->lamrows) * 2; - i = (i + 511) / 512 * 512; /* Round to nearest 512 bytes. */ - remain += i; - } - - ctx->databuf = malloc(sizeof(hdr) + remain); - if (!ctx->databuf) { - ERROR("Memory allocation failure!\n"); - return CUPS_BACKEND_FAILED; - } - - memcpy(ctx->databuf, &hdr, sizeof(hdr)); - ctx->datalen += sizeof(hdr); - - /* Read in the spool data */ - while(remain) { - i = read(data_fd, ctx->databuf + ctx->datalen, remain); - if (i == 0) - return CUPS_BACKEND_CANCEL; - if (i < 0) - return CUPS_BACKEND_CANCEL; - ctx->datalen += i; - remain -= i; - } - - return CUPS_BACKEND_OK; -} - -static int mitsu70x_do_pagesetup(struct mitsu70x_ctx *ctx) -{ - uint8_t cmdbuf[CMDBUF_LEN]; - uint8_t rdbuf[READBACK_LEN]; - - uint16_t tmp; - - int num, ret; - - memset(cmdbuf, 0, CMDBUF_LEN); - cmdbuf[0] = 0x1b; - cmdbuf[1] = 0x56; - cmdbuf[2] = 0x33; - cmdbuf[3] = 0x00; - tmp = cpu_to_be16(ctx->cols); - memcpy(cmdbuf + 4, &tmp, 2); - tmp = cpu_to_be16(ctx->rows); - memcpy(cmdbuf + 6, &tmp, 2); - cmdbuf[8] = 0x00; // or 0x80?? - cmdbuf[9] = 0x00; - - if ((ret = send_data(ctx->dev, ctx->endp_down, - cmdbuf, 10))) - return CUPS_BACKEND_FAILED; - - /* Read in the printer status */ - ret = read_data(ctx->dev, ctx->endp_up, - rdbuf, READBACK_LEN, &num); - if (ret < 0) - return CUPS_BACKEND_FAILED; - - if (num != 6) { - ERROR("Short Read! (%d/%d)\n", num, 26); - return CUPS_BACKEND_FAILED; - } - - /* Make sure response is sane */ - if (rdbuf[0] != 0xe4 || - rdbuf[1] != 0x56 || - rdbuf[2] != 0x33) { - ERROR("Unknown response from printer\n"); - return CUPS_BACKEND_FAILED; - } - - return 0; -} - -static int mitsu70x_get_state(struct mitsu70x_ctx *ctx, struct mitsu70x_state *resp) -{ - uint8_t cmdbuf[CMDBUF_LEN]; - int num, ret; - - /* Send Printer Query */ - memset(cmdbuf, 0, CMDBUF_LEN); - cmdbuf[0] = 0x1b; - cmdbuf[1] = 0x56; - cmdbuf[2] = 0x31; - cmdbuf[3] = 0x30; - cmdbuf[4] = 0x00; - cmdbuf[5] = 0x00; - - if ((ret = send_data(ctx->dev, ctx->endp_down, - cmdbuf, 6))) - return ret; - - memset(resp, 0, sizeof(*resp)); - - ret = read_data(ctx->dev, ctx->endp_up, - (uint8_t*) resp, sizeof(*resp), &num); - - if (ret < 0) - return ret; - if (num != sizeof(*resp)) { - ERROR("Short Read! (%d/%d)\n", num, (int)sizeof(*resp)); - return 4; - } - - return 0; -} - -static int mitsu70x_get_status(struct mitsu70x_ctx *ctx, struct mitsu70x_status_resp *resp) -{ - uint8_t cmdbuf[CMDBUF_LEN]; - int num, ret; - - /* Send Printer Query */ - memset(cmdbuf, 0, CMDBUF_LEN); - cmdbuf[0] = 0x1b; - cmdbuf[1] = 0x56; - cmdbuf[2] = 0x32; - cmdbuf[3] = 0x30; - if ((ret = send_data(ctx->dev, ctx->endp_down, - cmdbuf, 4))) - return ret; - memset(resp, 0, sizeof(*resp)); - ret = read_data(ctx->dev, ctx->endp_up, - (uint8_t*) resp, sizeof(*resp), &num); - - if (ret < 0) - return ret; - if (num != sizeof(*resp)) { - ERROR("Short Read! (%d/%d)\n", num, (int)sizeof(*resp)); - return 4; - } - - return 0; -} - -static int mitsu70x_main_loop(void *vctx, int copies) { - struct mitsu70x_ctx *ctx = vctx; - - struct mitsu70x_state rdbuf = { .hdr = 0 }, rdbuf2 = { .hdr = 0 }; - - int last_state = -1, state = S_IDLE; - int ret; - - if (!ctx) - return CUPS_BACKEND_FAILED; - -top: - if (state != last_state) { - if (dyesub_debug) - DEBUG("last_state %d new %d\n", last_state, state); - } - - ret = mitsu70x_get_state(ctx, &rdbuf); - if (ret) - return CUPS_BACKEND_FAILED; - - if (memcmp(&rdbuf, &rdbuf2, sizeof(rdbuf))) { - memcpy(&rdbuf2, &rdbuf, sizeof(rdbuf)); - } else if (state == last_state) { - sleep(1); - } - last_state = state; - - fflush(stderr); - - switch (state) { - case S_IDLE: - INFO("Waiting for printer idle\n"); -#if 0 // XXX no idea if this works.. - if (rdbuf.data[9] != 0x00) { - break; - } -#endif - INFO("Sending attention sequence\n"); - if ((ret = send_data(ctx->dev, ctx->endp_down, - ctx->databuf, sizeof(struct mitsu70x_hdr)))) - return CUPS_BACKEND_FAILED; - - state = S_SENT_ATTN; - break; - case S_SENT_ATTN: { - struct mitsu70x_status_resp resp; - ret = mitsu70x_get_status(ctx, &resp); - if (ret < 0) - return CUPS_BACKEND_FAILED; - - /* Yes, do it twice.. */ - - ret = mitsu70x_get_status(ctx, &resp); - if (ret < 0) - return CUPS_BACKEND_FAILED; - - // XXX check resp for sanity? - - state = S_SENT_HDR; - break; - } - case S_SENT_HDR: - INFO("Sending Page setup sequence\n"); - if ((ret = mitsu70x_do_pagesetup(ctx))) - return ret; - - INFO("Sending header sequence\n"); - - /* K60 may require fixups */ - if (ctx->type == P_MITSU_K60) { - struct mitsu70x_hdr *hdr = (struct mitsu70x_hdr*) (ctx->databuf + sizeof(struct mitsu70x_hdr)); - /* K60 only has a lower deck */ - hdr->deck = 1; - - /* 4x6 prints on 6x8 media need multicut mode */ - if (ctx->cols == 0x0748 && - ctx->rows == 0x04c2) - hdr->multicut = 1; - } - - if ((ret = send_data(ctx->dev, ctx->endp_down, - ctx->databuf + sizeof(struct mitsu70x_hdr), - sizeof(struct mitsu70x_hdr)))) - return CUPS_BACKEND_FAILED; - - INFO("Sending data\n"); - - { - /* K60 and 305 need data sent in 256K chunks, but the first - chunk needs to subtract the length of the 512-byte header */ - int chunk = 256*1024 - sizeof(struct mitsu70x_hdr); - int sent = 1024; - while (ctx->datalen > 0) { - if ((ret = send_data(ctx->dev, ctx->endp_down, - ctx->databuf + sent, chunk))) - return CUPS_BACKEND_FAILED; - sent += chunk; - chunk = ctx->datalen - sent; - if (chunk > 256*1024) - chunk = 256*1024; - } - } - - state = S_SENT_DATA; - break; - case S_SENT_DATA: - INFO("Waiting for printer to acknowledge completion\n"); - - state = S_FINISHED; - break; - default: - break; - }; - - if (state != S_FINISHED) - goto top; - - /* Clean up */ - if (terminate) - copies = 1; - - INFO("Print complete (%d copies remaining)\n", copies - 1); - - if (copies && --copies) { - state = S_IDLE; - goto top; - } - - return CUPS_BACKEND_OK; -} - -static void mitsu70x_dump_status(struct mitsu70x_status_resp *resp) -{ - unsigned int i; - - INFO("Model : "); - for (i = 0 ; i < 6 ; i++) { - DEBUG2("%c", le16_to_cpu(resp->model[i]) & 0x7f); - } - DEBUG2("\n"); - INFO("Serial Number : "); - for (i = 0 ; i < 6 ; i++) { - DEBUG2("%c", le16_to_cpu(resp->serno[i]) & 0x7f); - } - DEBUG2("\n"); - for (i = 0 ; i < 7 ; i++) { - char buf[7]; - if (resp->vers[i].ver[5] == '@') /* "DUMMY@" */ - continue; - memcpy(buf, resp->vers[i].ver, 6); - buf[6] = 0; - INFO("Component #%d ID: %s (%02x%02x)\n", - i, buf, resp->vers[i].unk[0], resp->vers[i].unk[1]); - } - if (resp->upper.present) { /* IOW, Not present */ - INFO("Prints remaining: %03d/%03d\n", - be16_to_cpu(resp->lower.remain), - be16_to_cpu(resp->lower.capacity)); - } else { - INFO("Prints remaining: Lower: %03d/%03d\n" - " Upper: %03d/%03d\n", - be16_to_cpu(resp->lower.remain), - be16_to_cpu(resp->lower.capacity), - be16_to_cpu(resp->upper.remain), - be16_to_cpu(resp->upper.capacity)); - } -} - -static int mitsu70x_query_status(struct mitsu70x_ctx *ctx) -{ - struct mitsu70x_status_resp resp; - int ret; - - ret = mitsu70x_get_status(ctx, &resp); - - if (!ret) - mitsu70x_dump_status(&resp); - - return ret; -} - -static int mitsu70x_query_serno(struct libusb_device_handle *dev, uint8_t endp_up, uint8_t endp_down, char *buf, int buf_len) -{ - int ret, i; - struct mitsu70x_status_resp resp = { .hdr = { 0 } }; - - struct mitsu70x_ctx ctx = { - .dev = dev, - .endp_up = endp_up, - .endp_down = endp_down, - }; - - ret = mitsu70x_get_status(&ctx, &resp); - - if (buf_len > 6) /* Will we ever have a buffer under 6 bytes? */ - buf_len = 6; - - for (i = 0 ; i < buf_len ; i++) { - *buf++ = le16_to_cpu(resp.serno[i]) & 0x7f; - } - *buf = 0; /* Null-terminate the returned string */ - - return ret; -} - - -static void mitsu70x_cmdline(void) -{ - DEBUG("\t\t[ -s ] # Query status\n"); -} - -static int mitsu70x_cmdline_arg(void *vctx, int argc, char **argv) -{ - struct mitsu70x_ctx *ctx = vctx; - int i, j = 0; - - if (!ctx) - return -1; - - /* Reset arg parsing */ - optind = 1; - opterr = 0; - while ((i = getopt(argc, argv, GETOPT_LIST_GLOBAL "s")) >= 0) { - switch(i) { - GETOPT_PROCESS_GLOBAL - case 's': - j = mitsu70x_query_status(ctx); - break; - default: - break; /* Ignore completely */ - } - - if (j) return j; - } - - return 0; -} - - -/* Exported */ -struct dyesub_backend mitsu70x_backend = { - .name = "Mitsubishi CP-D70/D707/K60", - .version = "0.32WIP", - .uri_prefix = "mitsu70x", - .cmdline_usage = mitsu70x_cmdline, - .cmdline_arg = mitsu70x_cmdline_arg, - .init = mitsu70x_init, - .attach = mitsu70x_attach, - .teardown = mitsu70x_teardown, - .read_parse = mitsu70x_read_parse, - .main_loop = mitsu70x_main_loop, - .query_serno = mitsu70x_query_serno, - .devices = { - { USB_VID_MITSU, USB_PID_MITSU_D70X, P_MITSU_D70X, ""}, - { USB_VID_MITSU, USB_PID_MITSU_K60, P_MITSU_K60, ""}, -// { USB_VID_MITSU, USB_PID_MITSU_D80, P_MITSU_D70X, ""}, - { USB_VID_KODAK, USB_PID_KODAK305, P_MITSU_K60, ""}, - { 0, 0, 0, ""} - } -}; - -/* Mitsubish CP-D70DW/CP-D707DW/CP-K60DW-S/CP-D80DW/Kodak 305 data format - - Spool file consists of two headers followed by three image planes - and an optional lamination data plane. All blocks are rounded up to - a 512-byte boundary. - - All multi-byte numbers are big endian, ie MSB first. - - Header 1: (Init) - - 1b 45 57 55 00 00 00 00 00 00 00 00 00 00 00 00 - (padded by NULLs to a 512-byte boundary) - - Header 2: (Header) - - 1b 5a 54 PP 00 00 00 00 00 00 00 00 00 00 00 00 - XX XX YY YY QQ QQ ZZ ZZ SS 00 00 00 00 00 00 00 - UU 00 00 00 00 00 00 00 00 TT 00 00 00 00 00 00 - RR 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 - - (padded by NULLs to a 512-byte boundary) - - PP == 0x01 on D70x/D80, 0x02 on K60/305 - XX XX == columns - YY YY == rows - QQ QQ == lamination columns (equal to XX XX) - ZZ ZZ == lamination rows (YY YY + 12) - SS == Print mode: 00 = Fine, 03 = SuperFine (D70x/D80 only), 04 = UltraFine - (Matte requires Superfine or Ultrafine) - UU == 00 = Auto, 01 = Lower Deck (required for K60/305), 02 = Upper Deck - TT == lamination: 00 glossy, 02 matte. - RR == 00 (normal), 01 = (Double-cut 4x6), 05 = (double-cut 2x6) - - Data planes: - 16-bit data, rounded up to 512-byte block (XX * YY * 2 bytes) - - Lamination plane: (only present if QQ and ZZ are nonzero) - 16-byte data, rounded up to 512-byte block (QQ * ZZ * 2 bytes) - - ******************************************************************** - - Command format: - - -> 1b 56 32 30 - <- [256 byte payload] - - PRINTER STATUS - - e4 56 32 30 00 00 00 00 00 00 00 00 00 00 00 00 .V20............ - 00 00 00 00 00 00 00 00 00 00 00 80 00 00 00 00 ................ - 44 80 00 00 5f 00 00 3d 43 00 50 00 44 00 37 00 D..._..=C.P.D.7. - 30 00 44 00 30 00 30 00 31 00 31 00 31 00 37 00 0.D.0.0.1.1.1.7. - 33 31 36 54 31 33 21 a3 33 31 35 42 31 32 f5 e5 316T13!.315B12.. - 33 31 39 42 31 31 a3 fb 33 31 38 45 31 32 50 0d 319B11..318E12P. - 33 31 37 41 32 32 a3 82 44 55 4d 4d 59 40 00 00 317A22..DUMMY@.. - 44 55 4d 4d 59 40 00 00 00 00 00 00 00 00 00 00 DUMMY@.......... - - LOWER DECK STATUS - - 00 00 00 00 00 00 02 04 3f 00 00 04 96 00 00 00 MM MM: media capacity - ff 0f 01 00 MM MM NN NN 00 00 00 00 05 28 75 80 NN NN: prints remaining - 80 00 80 00 80 00 80 00 80 00 80 00 80 00 80 00 - 80 00 80 00 80 00 80 00 80 00 80 00 80 00 80 00 - - alt (some sort of error state) - - 00 00 00 0a 05 05 01 d5 38 00 00 00 14 00 00 00 - ff ff ff ff ff ff ff ff ff ff 00 00 00 27 72 80 - 80 00 80 00 80 00 80 00 80 00 80 00 80 00 80 00 - 80 00 80 00 80 00 80 00 80 00 80 00 80 00 80 00 - - UPPER DECK STATUS (if present) - - XX XX 00 00 00 00 01 ee 3d 00 00 06 39 00 00 00 MM MM: media capacity - ff 02 00 00 MM MM NN NN 00 00 00 00 06 67 78 00 NN NN: prints remaining - 80 00 80 00 80 00 80 00 80 00 80 00 80 00 80 00 XX XX: 0x80 00 if no deck - 80 00 80 00 80 00 80 00 80 00 80 00 80 00 80 00 - - alt (no deck present) - - 80 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 00 - ff ff ff ff ff ff ff ff ff ff 00 00 00 00 80 00 - 80 00 80 00 80 00 80 00 80 00 80 00 80 00 80 00 - 80 00 80 00 80 00 80 00 80 00 80 00 80 00 80 00 - - -> 1b 56 31 30 00 00 - <- [26 byte payload] - - CP-D707DW: - - e4 56 31 30 00 00 00 XX YY ZZ 00 00 TT 00 00 00 - 00 00 00 00 WW 00 00 00 00 00 - - XX/YY/ZZ and WW/TT are unknown. Observed values: - - 00 00 00 00/00 - 40 80 a0 80/0f - 80 80 a0 - 40 80 90 - 40 80 00 - - also seen: - - e4 56 31 30 00 00 00 00 00 00 00 00 0f 00 00 00 - 00 0a 05 05 80 00 00 00 00 00 - - e4 56 31 30 00 00 00 40 80 90 10 00 0f 00 00 00 - 00 0a 05 05 80 00 00 00 00 00 - - e4 56 31 30 00 00 00 00 40 80 00 00 00 ff 40 00 - 00 00 00 00 80 00 00 00 00 00 - - print just submitted: - - e4 56 31 30 00 00 00 00 40 20 00 00 00 8c 00 00 - 00 00 00 00 80 00 00 00 00 00 - - prints running... - - e4 56 31 30 00 00 00 00 40 20 00 00 00 cf 00 20 - 00 00 00 00 80 00 00 00 00 00 - - - - CP-K60DW-S: - - e4 56 31 30 00 00 00 XX YY 00 00 00 0f 00 00 00 - 00 00 00 00 80 00 00 00 00 00 - - XX/YY are unknown, observed values: - - 40/80 - 00/00 - - Sent to start a print - - -> 1b 56 33 00 XX XX YY YY UU 00 - - XX XX == columns - YY YY == rows - UU == Unknown, seen 0x00 and 0x80 - - <- [ 6 byte payload ] - - e4 56 33 00 00 00 - e4 56 33 00 00 01 - e5 56 33 ff 01 01 (which appeared to work) - - ** ** ** ** ** ** - - The windows drivers seem to send the id and status queries before - and in between each of the chunks sent to the printer. There doesn't - appear to be any particular intelligence in the protocol, but it didn't - work when the raw dump was submitted as-is. - - ** ** ** ** ** ** - -Various deck status dumps: - -0080 00 00 00 00 00 00 01 d2 39 00 00 00 07 00 00 00 ........9....... -0090 61 8f 00 00 01 40 01 36 00 00 00 00 00 17 79 80 a....@.6......y. - -0080 00 00 00 00 00 00 01 c6 39 00 00 00 08 00 00 00 ........9....... -0090 61 8f 00 00 01 40 01 35 00 00 00 00 00 18 79 80 a....@.5......y. - -0080 00 00 00 00 00 00 02 19 50 00 00 00 19 00 00 01 ........P....... -0090 6c 8f 00 00 01 40 01 22 00 00 00 00 00 27 83 80 l....@.".....'.. - -0080 00 00 00 00 00 00 02 00 3e 00 00 04 96 00 00 00 ........>....... -0090 ff 0f 01 00 00 c8 00 52 00 00 00 00 05 28 75 80 .......R.....(u. - -00c0 00 00 00 00 00 00 01 f3 3d 00 00 06 39 00 00 00 ........=...9... -00d0 ff 02 00 00 01 90 00 c3 00 00 00 00 06 67 78 00 .............gx. - -0080 00 00 00 00 00 00 01 d0 38 00 00 03 70 00 00 00 ........8...p... -0090 ff 02 00 00 01 90 00 1e 01 00 00 00 03 83 72 80 ..............r. - -0080 00 00 00 00 00 00 01 d6 39 00 00 00 20 00 00 00 ........9... ... -0090 ff 02 00 00 01 90 01 7c 01 00 00 00 00 33 72 80 .......|.....3r. - - 00 00 00 0a 05 05 01 d5 38 00 00 00 14 00 00 00 - ff ff ff ff ff ff ff ff ff ff 00 00 00 27 72 80 ?? Error ?? - - 80 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 00 - ff ff ff ff ff ff ff ff ff ff 00 00 00 00 80 00 NO DECK PRESENT - */ diff --git a/src/cups/rastertoprinter.c b/src/cups/rastertoprinter.c index 4a1ae9c..1a89bc5 100644 --- a/src/cups/rastertoprinter.c +++ b/src/cups/rastertoprinter.c @@ -1,6 +1,4 @@ /* - * "$Id: rastertoprinter.c,v 1.143 2014/01/04 00:31:37 rlk Exp $" - * * Gutenprint based raster filter for the Common UNIX Printing System. * * Copyright 1993-2008 by Mike Sweet. @@ -1091,7 +1089,6 @@ main(int argc, /* I - Number of command-line arguments */ stp_vars_t *default_settings; int initialized_job = 0; const char *version_id; - const char *release_version_id; struct tms tms; long clocks_per_sec; struct timeval t1, t2; @@ -1126,7 +1123,6 @@ main(int argc, /* I - Number of command-line arguments */ (void) gettimeofday(&t1, &tz); stp_init(); version_id = stp_get_version(); - release_version_id = stp_get_release_version(); default_settings = stp_vars_create(); /* @@ -1209,13 +1205,13 @@ main(int argc, /* I - Number of command-line arguments */ strlen(CUPS_PPD_NICKNAME_STRING)) != ' '))) { stp_i18n_printf(po, _("ERROR: The PPD version (%s) is not compatible with " - "Gutenprint %s.\n"), + "Gutenprint %s. Please run `%scups-genppdupdate' as administrator.\n"), ppd->nickname+strlen(ppd->modelname)+strlen(CUPS_PPD_NICKNAME_STRING), - version_id); + version_id, SBINDIR); fprintf(stderr, "DEBUG: Gutenprint: If you have upgraded your version of Gutenprint\n"); fprintf(stderr, "DEBUG: Gutenprint: recently, you must reinstall all printer queues.\n"); fprintf(stderr, "DEBUG: Gutenprint: If the previous installed version of Gutenprint\n"); - fprintf(stderr, "DEBUG: Gutenprint: was 5.0.0 or higher, you can use the `cups-genppdupdate.%s'\n", release_version_id); + fprintf(stderr, "DEBUG: Gutenprint: was 5.0.0 or higher, you can use the `cups-genppdupdate'\n"); fprintf(stderr, "DEBUG: Gutenprint: program to do this; if the previous installed version\n"); fprintf(stderr, "DEBUG: Gutenprint: was older, you can use the Modify Printer command via\n"); fprintf(stderr, "DEBUG: Gutenprint: the CUPS web interface: http://localhost:631/printers.\n"); @@ -1707,8 +1703,3 @@ Image_width(stp_image_t *image) /* I - Image */ fprintf(stderr, "DEBUG: Gutenprint: Image_width %d\n", cups->adjusted_width); return (cups->adjusted_width); } - - -/* - * End of "$Id: rastertoprinter.c,v 1.143 2014/01/04 00:31:37 rlk Exp $". - */ diff --git a/src/escputil/Makefile.am b/src/escputil/Makefile.am index 4bba6e2..8f55d26 100644 --- a/src/escputil/Makefile.am +++ b/src/escputil/Makefile.am @@ -1,4 +1,3 @@ -## $id: makefile.am,v 1.9 2001/06/03 18:35:03 rleigh Exp $ ## Copyright (C) 2000 Roger Leigh ## ## This program is free software; you can redistribute it and/or modify diff --git a/src/escputil/Makefile.in b/src/escputil/Makefile.in index 875fd84..da27b47 100644 --- a/src/escputil/Makefile.in +++ b/src/escputil/Makefile.in @@ -84,25 +84,23 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(top_srcdir)/scripts/global.mk $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/scripts/mkinstalldirs \ - $(top_srcdir)/scripts/depcomp + $(srcdir)/Makefile.am $(top_srcdir)/scripts/depcomp @BUILD_ESCPUTIL_TRUE@bin_PROGRAMS = escputil$(EXEEXT) subdir = src/escputil ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/isc-posix.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stp.m4 \ - $(top_srcdir)/m4/stp_cups.m4 $(top_srcdir)/m4/stp_gimp.m4 \ - $(top_srcdir)/m4/stp_option.m4 $(top_srcdir)/m4/stp_release.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/stp.m4 $(top_srcdir)/m4/stp_cups.m4 \ + $(top_srcdir)/m4/stp_gimp.m4 $(top_srcdir)/m4/stp_option.m4 \ + $(top_srcdir)/m4/stp_release.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/scripts/mkinstalldirs +mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = @@ -219,9 +217,6 @@ ENABLE_STATIC = @ENABLE_STATIC@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FIND = @FIND@ -FOOMATIC_CONFIGURE = @FOOMATIC_CONFIGURE@ -FOOMATIC_KITLOAD = @FOOMATIC_KITLOAD@ -FOOMATIC_PPDFILE = @FOOMATIC_PPDFILE@ GENPPD_LIBS = @GENPPD_LIBS@ GIMP2_CFLAGS = @GIMP2_CFLAGS@ GIMP2_LIBS = @GIMP2_LIBS@ @@ -254,9 +249,6 @@ GUTENPRINT_MICRO_VERSION = @GUTENPRINT_MICRO_VERSION@ GUTENPRINT_MINOR_VERSION = @GUTENPRINT_MINOR_VERSION@ GUTENPRINT_RELEASE_VERSION = @GUTENPRINT_RELEASE_VERSION@ GUTENPRINT_VERSION = @GUTENPRINT_VERSION@ -IJS_CFLAGS = @IJS_CFLAGS@ -IJS_CONFIG = @IJS_CONFIG@ -IJS_LIBS = @IJS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -277,6 +269,7 @@ LIBREADLINE_DEPS = @LIBREADLINE_DEPS@ LIBS = $(INTLLIBS) @LIBS@ LIBTOOL = @LIBTOOL@ LIBTOOL_DEPS = @LIBTOOL_DEPS@ +LIBUSB_BACKEND_LIBDEPS = @LIBUSB_BACKEND_LIBDEPS@ LIBUSB_CFLAGS = @LIBUSB_CFLAGS@ LIBUSB_LIBS = @LIBUSB_LIBS@ LIPO = @LIPO@ diff --git a/src/escputil/escputil.c b/src/escputil/escputil.c index d7fec55..8f4ae9e 100644 --- a/src/escputil/escputil.c +++ b/src/escputil/escputil.c @@ -1,5 +1,4 @@ /* - * "$Id: escputil.c,v 1.110 2014/02/21 01:56:24 rlk Exp $" * * Printer maintenance utility for EPSON Stylus (R) printers * diff --git a/src/foomatic/Makefile.am b/src/foomatic/Makefile.am deleted file mode 100644 index 37271d8..0000000 --- a/src/foomatic/Makefile.am +++ /dev/null @@ -1,122 +0,0 @@ -## $Id: Makefile.am,v 1.57 2014/01/12 17:12:57 rlk Exp $ -## Copyright (C) 2000 Roger Leigh -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2, or (at your option) -## any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - -## Process this file with automake to produce Makefile.in. - -@SET_MAKE@ - -include $(top_srcdir)/scripts/global.mk - - -## Variables - -DISTDIRS = foomatic-templates-ijs -LOCAL_CPPFLAGS = $(GUTENPRINT_CFLAGS) - -if BUILD_FOOMATIC_3 -BUILD_FOOMATIC = 1 -endif - -STP_ENV= STP_MODULE_PATH=$(top_builddir)/src/main/.libs:$(top_builddir)/src/main STP_DATA_PATH=$(top_srcdir)/src/xml - -LC_C_ENV= LC_ALL=C LANG=C LANGUAGE=C - -FOOMATIC_GENERATOR= $(STP_ENV) $(LC_C_ENV) ./foomatic-generator - -## Programs - -if BUILD_FOOMATIC -noinst_PROGRAMS = printer_options printer_margins paper_sizes gutenprint-version \ - printers -endif - -printer_options_SOURCES = printer_options.c -printer_options_LDADD = $(GUTENPRINT_LIBS) - -printer_margins_SOURCES = printer_margins.c -printer_margins_LDADD = $(GUTENPRINT_LIBS) - -gutenprint_version_SOURCES = gutenprint-version.c -gutenprint_version_LDADD = $(GUTENPRINT_LIBS) - -paper_sizes_SOURCES = paper_sizes.c -paper_sizes_LDADD = $(GUTENPRINT_LIBS) - -printers_SOURCES = printers.c -printers_LDADD = $(GUTENPRINT_LIBS) - - -## Rules - -if BUILD_FOOMATIC -INSTALL_DATA_LOCAL_DEPS = foomatic-data -else -INSTALL_DATA_LOCAL_DEPS = -endif - -if BUILD_FOOMATIC_3 -FOOMATIC_GENERATOR_FOOMATIC_3_OPTS = -f 3 -else -FOOMATIC_GENERATOR_FOOMATIC_3_OPTS = -endif - -all-local: $(INSTALL_DATA_LOCAL_DEPS) - -install-data-local: $(INSTALL_DATA_LOCAL_DEPS) - if test -n "$(INSTALL_DATA_LOCAL_DEPS)" ; then \ - $(MAKE) install-kit FOOMATIC_DB=foomatic-db/gutenprint-ijs.@GUTENPRINT_RELEASE_VERSION@ ; \ - $(MAKE) install-kit FOOMATIC_DB=foomatic-db/gutenprint-ijs-simplified.@GUTENPRINT_RELEASE_VERSION@ ; \ - fi - -install-kit: - if test -n "$(DESTDIR)" ; then \ - $(mkdir_p) $(DESTDIR)`$(FOOMATIC_KITLOAD) -l` ; \ - $(FOOMATIC_KITLOAD) -f -d $(DESTDIR) -k $(FOOMATIC_DB) ; \ - else \ - $(FOOMATIC_KITLOAD) -f -k $(FOOMATIC_DB) ; \ - fi - -clean-local: - -$(RM) -rf foomatic-db - -foomatic-data: foomatic-stamp - -foomatic-stamp: foomatic-generator $(noinst_PROGRAMS) mk_printerlist $(top_builddir)/src/xml/xml-stamp - -$(RM) -rf foomatic-db - $(FOOMATIC_GENERATOR) -t $(srcdir)/foomatic-templates $(FOOMATIC_GENERATOR_EXTRA_OPTS) $(FOOMATIC_GENERATOR_FOOMATIC_3_OPTS) - $(FOOMATIC_GENERATOR) -s -t $(srcdir)/foomatic-templates $(FOOMATIC_GENERATOR_EXTRA_OPTS) $(FOOMATIC_GENERATOR_FOOMATIC_3_OPTS) - touch foomatic-stamp - -dist-hook: - for dir in $(DISTDIRS) ; do \ - if test -d $(srcdir)/$$dir ; then \ - mkdir $(distdir)/$$dir; \ - for dirfile in $(srcdir)/$$dir/*.xml; do \ - if test -f $$dirfile ; then \ - cp -p $$dirfile $(distdir)/$$dir; \ - fi \ - done \ - fi \ - done - -$(top_builddir)/src/xml/xml-stamp: - cd $(top_builddir)/src/xml; $(MAKE) xml-stamp - -## Clean - -CLEANFILES = foomatic-stamp -MAINTAINERCLEANFILES = Makefile.in diff --git a/src/foomatic/Makefile.in b/src/foomatic/Makefile.in deleted file mode 100644 index 84b4e3b..0000000 --- a/src/foomatic/Makefile.in +++ /dev/null @@ -1,820 +0,0 @@ -# Makefile.in generated by automake 1.13.4 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2013 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -# Variables - -#export STP_MODULE_PATH = $(top_builddir)/src/main/.libs:$(top_builddir)/src/main -#export STP_DATA_PATH = $(top_srcdir)/src/xml - -VPATH = @srcdir@ -am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\[\ \ ]*) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -[dEDm]) skip_next=yes;; \ - -[JT]) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -DIST_COMMON = $(top_srcdir)/scripts/global.mk $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/scripts/mkinstalldirs \ - $(srcdir)/foomatic-generator.in $(srcdir)/mk_printerlist.in \ - $(top_srcdir)/scripts/depcomp -@BUILD_FOOMATIC_TRUE@noinst_PROGRAMS = printer_options$(EXEEXT) \ -@BUILD_FOOMATIC_TRUE@ printer_margins$(EXEEXT) \ -@BUILD_FOOMATIC_TRUE@ paper_sizes$(EXEEXT) \ -@BUILD_FOOMATIC_TRUE@ gutenprint-version$(EXEEXT) \ -@BUILD_FOOMATIC_TRUE@ printers$(EXEEXT) -subdir = src/foomatic -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/isc-posix.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stp.m4 \ - $(top_srcdir)/m4/stp_cups.m4 $(top_srcdir)/m4/stp_gimp.m4 \ - $(top_srcdir)/m4/stp_option.m4 $(top_srcdir)/m4/stp_release.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/scripts/mkinstalldirs -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = foomatic-generator mk_printerlist -CONFIG_CLEAN_VPATH_FILES = -PROGRAMS = $(noinst_PROGRAMS) -am_gutenprint_version_OBJECTS = gutenprint-version.$(OBJEXT) -gutenprint_version_OBJECTS = $(am_gutenprint_version_OBJECTS) -gutenprint_version_DEPENDENCIES = $(GUTENPRINT_LIBS) -AM_V_lt = $(am__v_lt_@AM_V@) -am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) -am__v_lt_0 = --silent -am__v_lt_1 = -am_paper_sizes_OBJECTS = paper_sizes.$(OBJEXT) -paper_sizes_OBJECTS = $(am_paper_sizes_OBJECTS) -paper_sizes_DEPENDENCIES = $(GUTENPRINT_LIBS) -am_printer_margins_OBJECTS = printer_margins.$(OBJEXT) -printer_margins_OBJECTS = $(am_printer_margins_OBJECTS) -printer_margins_DEPENDENCIES = $(GUTENPRINT_LIBS) -am_printer_options_OBJECTS = printer_options.$(OBJEXT) -printer_options_OBJECTS = $(am_printer_options_OBJECTS) -printer_options_DEPENDENCIES = $(GUTENPRINT_LIBS) -am_printers_OBJECTS = printers.$(OBJEXT) -printers_OBJECTS = $(am_printers_OBJECTS) -printers_DEPENDENCIES = $(GUTENPRINT_LIBS) -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -depcomp = $(SHELL) $(top_srcdir)/scripts/depcomp -am__depfiles_maybe = depfiles -am__mv = mv -f -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) -AM_V_CC = $(am__v_CC_@AM_V@) -am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) -am__v_CC_0 = @echo " CC " $@; -am__v_CC_1 = -CCLD = $(CC) -LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CCLD = $(am__v_CCLD_@AM_V@) -am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) -am__v_CCLD_0 = @echo " CCLD " $@; -am__v_CCLD_1 = -SOURCES = $(gutenprint_version_SOURCES) $(paper_sizes_SOURCES) \ - $(printer_margins_SOURCES) $(printer_options_SOURCES) \ - $(printers_SOURCES) -DIST_SOURCES = $(gutenprint_version_SOURCES) $(paper_sizes_SOURCES) \ - $(printer_margins_SOURCES) $(printer_options_SOURCES) \ - $(printers_SOURCES) -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) -# Read a list of newline-separated strings from the standard input, -# and print each of them once, without duplicates. Input order is -# *not* preserved. -am__uniquify_input = $(AWK) '\ - BEGIN { nonempty = 0; } \ - { items[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in items) print i; }; } \ -' -# Make sure the list of sources is unique. This is necessary because, -# e.g., the same source file might be shared among _SOURCES variables -# for different programs/libraries. -am__define_uniq_tagged_files = \ - list='$(am__tagged_files)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -ALL_LINGUAS = @ALL_LINGUAS@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -AR = @AR@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BUILD_CUPS_PPDS = @BUILD_CUPS_PPDS@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CONVERT = @CONVERT@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CUPS_CFLAGS = @CUPS_CFLAGS@ -CUPS_CONFIG = @CUPS_CONFIG@ -CUPS_LIBS = @CUPS_LIBS@ -CUPS_PPD_PS_LEVEL = @CUPS_PPD_PS_LEVEL@ -CYGPATH_W = @CYGPATH_W@ -DB2HTML = @DB2HTML@ -DB2PDF = @DB2PDF@ -DB2PS = @DB2PS@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DIALOG = @DIALOG@ -DLLTOOL = @DLLTOOL@ -DOXYGEN = @DOXYGEN@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -DVIPDF = @DVIPDF@ -DVIPS = @DVIPS@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -ENABLE_SHARED = @ENABLE_SHARED@ -ENABLE_STATIC = @ENABLE_STATIC@ -EXEEXT = @EXEEXT@ -FGREP = @FGREP@ -FIND = @FIND@ -FOOMATIC_CONFIGURE = @FOOMATIC_CONFIGURE@ -FOOMATIC_KITLOAD = @FOOMATIC_KITLOAD@ -FOOMATIC_PPDFILE = @FOOMATIC_PPDFILE@ -GENPPD_LIBS = @GENPPD_LIBS@ -GIMP2_CFLAGS = @GIMP2_CFLAGS@ -GIMP2_LIBS = @GIMP2_LIBS@ -GIMPTOOL2_CHECK = @GIMPTOOL2_CHECK@ -GLIB_MKENUMS = @GLIB_MKENUMS@ -GMSGFMT = @GMSGFMT@ -GMSGFMT_015 = @GMSGFMT_015@ -GNUCFLAGS = @GNUCFLAGS@ -GREP = @GREP@ -GTK2_CFLAGS = @GTK2_CFLAGS@ -GTK2_LIBS = @GTK2_LIBS@ -GUTENPRINTUI2_BINARY_AGE = @GUTENPRINTUI2_BINARY_AGE@ -GUTENPRINTUI2_CFLAGS = @GUTENPRINTUI2_CFLAGS@ -GUTENPRINTUI2_CURRENT_INTERFACE = @GUTENPRINTUI2_CURRENT_INTERFACE@ -GUTENPRINTUI2_INTERFACE_AGE = @GUTENPRINTUI2_INTERFACE_AGE@ -GUTENPRINTUI2_LIBDEPS = @GUTENPRINTUI2_LIBDEPS@ -GUTENPRINTUI2_LIBS = $(top_builddir)/src/gutenprintui2/libgutenprintui2.la -GUTENPRINTUI2_VERSION = @GUTENPRINTUI2_VERSION@ -GUTENPRINT_BASE_VERSION = @GUTENPRINT_BASE_VERSION@ -GUTENPRINT_BINARY_AGE = @GUTENPRINT_BINARY_AGE@ -GUTENPRINT_CFLAGS = @GUTENPRINT_CFLAGS@ -GUTENPRINT_CURRENT_INTERFACE = @GUTENPRINT_CURRENT_INTERFACE@ -GUTENPRINT_INTERFACE_AGE = @GUTENPRINT_INTERFACE_AGE@ -GUTENPRINT_LIBDEPS = @GUTENPRINT_LIBDEPS@ - -# Libraries -GUTENPRINT_LIBS = $(top_builddir)/src/main/libgutenprint.la -GUTENPRINT_MAJOR_VERSION = @GUTENPRINT_MAJOR_VERSION@ -GUTENPRINT_MICRO_VERSION = @GUTENPRINT_MICRO_VERSION@ -GUTENPRINT_MINOR_VERSION = @GUTENPRINT_MINOR_VERSION@ -GUTENPRINT_RELEASE_VERSION = @GUTENPRINT_RELEASE_VERSION@ -GUTENPRINT_VERSION = @GUTENPRINT_VERSION@ -IJS_CFLAGS = @IJS_CFLAGS@ -IJS_CONFIG = @IJS_CONFIG@ -IJS_LIBS = @IJS_LIBS@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INTLLIBS = @INTLLIBS@ -INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -LD = @LD@ -LDFLAGS = @LDFLAGS@ -LEX = @LEX@ -LEXLIB = @LEXLIB@ -LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -LIBICONV = @LIBICONV@ -LIBINTL = @LIBINTL@ -LIBM = @LIBM@ -LIBOBJS = @LIBOBJS@ -LIBREADLINE_DEPS = @LIBREADLINE_DEPS@ -LIBS = $(INTLLIBS) @LIBS@ -LIBTOOL = @LIBTOOL@ -LIBTOOL_DEPS = @LIBTOOL_DEPS@ -LIBUSB_CFLAGS = @LIBUSB_CFLAGS@ -LIBUSB_LIBS = @LIBUSB_LIBS@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTALLOCA = @LTALLOCA@ -LTLIBICONV = @LTLIBICONV@ -LTLIBINTL = @LTLIBINTL@ -LTLIBOBJS = @LTLIBOBJS@ -MAINT = @MAINT@ -MAINTAINER_CFLAGS = @MAINTAINER_CFLAGS@ -MAKEINFO = @MAKEINFO@ -MANIFEST_TOOL = @MANIFEST_TOOL@ -MKDIR_P = @MKDIR_P@ -MSGFMT = @MSGFMT@ -MSGFMT_015 = @MSGFMT_015@ -MSGMERGE = @MSGMERGE@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PERL = @PERL@ -PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ -PLUG_IN_PATH = @PLUG_IN_PATH@ -POSUB = @POSUB@ -RANLIB = @RANLIB@ -RELEASE_DATE = @RELEASE_DATE@ -RM = @RM@ -SED = @SED@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -STRIP = @STRIP@ -TEST = @TEST@ -TEXI2HTML = @TEXI2HTML@ -TRUE = @TRUE@ -USE_NLS = @USE_NLS@ -VERSION = @VERSION@ -WHICH_PPDS = @WHICH_PPDS@ -XGETTEXT = @XGETTEXT@ -XGETTEXT_015 = @XGETTEXT_015@ -YACC = @YACC@ -YFLAGS = @YFLAGS@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -cups_bindir = @cups_bindir@ -cups_conf_datadir = @cups_conf_datadir@ -cups_conf_serverbin = @cups_conf_serverbin@ -cups_conf_serverroot = @cups_conf_serverroot@ -cups_exec_prefix = @cups_exec_prefix@ -cups_prefix = @cups_prefix@ -cups_sbindir = @cups_sbindir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -gimp2_plug_indir = @gimp2_plug_indir@ -gutenprint_cflags = @gutenprint_cflags@ -gutenprint_libdeps = @gutenprint_libdeps@ -gutenprint_libs = @gutenprint_libs@ -gutenprintui2_cflags = @gutenprintui2_cflags@ -gutenprintui2_libdeps = @gutenprintui2_libdeps@ -gutenprintui2_libs = @gutenprintui2_libs@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target_alias = @target_alias@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_builddir)/include $(LOCAL_CPPFLAGS) $(GNUCFLAGS) -GUTENPRINTUI_LIBS = $(top_builddir)/src/gutenprintui/libgutenprintui.la -DISTDIRS = foomatic-templates-ijs -LOCAL_CPPFLAGS = $(GUTENPRINT_CFLAGS) -@BUILD_FOOMATIC_3_TRUE@BUILD_FOOMATIC = 1 -STP_ENV = STP_MODULE_PATH=$(top_builddir)/src/main/.libs:$(top_builddir)/src/main STP_DATA_PATH=$(top_srcdir)/src/xml -LC_C_ENV = LC_ALL=C LANG=C LANGUAGE=C -FOOMATIC_GENERATOR = $(STP_ENV) $(LC_C_ENV) ./foomatic-generator -printer_options_SOURCES = printer_options.c -printer_options_LDADD = $(GUTENPRINT_LIBS) -printer_margins_SOURCES = printer_margins.c -printer_margins_LDADD = $(GUTENPRINT_LIBS) -gutenprint_version_SOURCES = gutenprint-version.c -gutenprint_version_LDADD = $(GUTENPRINT_LIBS) -paper_sizes_SOURCES = paper_sizes.c -paper_sizes_LDADD = $(GUTENPRINT_LIBS) -printers_SOURCES = printers.c -printers_LDADD = $(GUTENPRINT_LIBS) -@BUILD_FOOMATIC_FALSE@INSTALL_DATA_LOCAL_DEPS = -@BUILD_FOOMATIC_TRUE@INSTALL_DATA_LOCAL_DEPS = foomatic-data -@BUILD_FOOMATIC_3_FALSE@FOOMATIC_GENERATOR_FOOMATIC_3_OPTS = -@BUILD_FOOMATIC_3_TRUE@FOOMATIC_GENERATOR_FOOMATIC_3_OPTS = -f 3 -CLEANFILES = foomatic-stamp -MAINTAINERCLEANFILES = Makefile.in -all: all-am - -.SUFFIXES: -.SUFFIXES: .c .lo .o .obj -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/scripts/global.mk $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/foomatic/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --gnu src/foomatic/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; -$(top_srcdir)/scripts/global.mk: - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): -foomatic-generator: $(top_builddir)/config.status $(srcdir)/foomatic-generator.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ -mk_printerlist: $(top_builddir)/config.status $(srcdir)/mk_printerlist.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ - -clean-noinstPROGRAMS: - @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \ - echo " rm -f" $$list; \ - rm -f $$list || exit $$?; \ - test -n "$(EXEEXT)" || exit 0; \ - list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ - echo " rm -f" $$list; \ - rm -f $$list - -gutenprint-version$(EXEEXT): $(gutenprint_version_OBJECTS) $(gutenprint_version_DEPENDENCIES) $(EXTRA_gutenprint_version_DEPENDENCIES) - @rm -f gutenprint-version$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(gutenprint_version_OBJECTS) $(gutenprint_version_LDADD) $(LIBS) - -paper_sizes$(EXEEXT): $(paper_sizes_OBJECTS) $(paper_sizes_DEPENDENCIES) $(EXTRA_paper_sizes_DEPENDENCIES) - @rm -f paper_sizes$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(paper_sizes_OBJECTS) $(paper_sizes_LDADD) $(LIBS) - -printer_margins$(EXEEXT): $(printer_margins_OBJECTS) $(printer_margins_DEPENDENCIES) $(EXTRA_printer_margins_DEPENDENCIES) - @rm -f printer_margins$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(printer_margins_OBJECTS) $(printer_margins_LDADD) $(LIBS) - -printer_options$(EXEEXT): $(printer_options_OBJECTS) $(printer_options_DEPENDENCIES) $(EXTRA_printer_options_DEPENDENCIES) - @rm -f printer_options$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(printer_options_OBJECTS) $(printer_options_LDADD) $(LIBS) - -printers$(EXEEXT): $(printers_OBJECTS) $(printers_DEPENDENCIES) $(EXTRA_printers_DEPENDENCIES) - @rm -f printers$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(printers_OBJECTS) $(printers_LDADD) $(LIBS) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gutenprint-version.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/paper_sizes.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/printer_margins.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/printer_options.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/printers.Po@am__quote@ - -.c.o: -@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $< - -.c.obj: -@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'` - -.c.lo: -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs - -ID: $(am__tagged_files) - $(am__define_uniq_tagged_files); mkid -fID $$unique -tags: tags-am -TAGS: tags - -tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - set x; \ - here=`pwd`; \ - $(am__define_uniq_tagged_files); \ - shift; \ - if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - if test $$# -gt 0; then \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - "$$@" $$unique; \ - else \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$unique; \ - fi; \ - fi -ctags: ctags-am - -CTAGS: ctags -ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - $(am__define_uniq_tagged_files); \ - test -z "$(CTAGS_ARGS)$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && $(am__cd) $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) "$$here" -cscopelist: cscopelist-am - -cscopelist-am: $(am__tagged_files) - list='$(am__tagged_files)'; \ - case "$(srcdir)" in \ - [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ - *) sdir=$(subdir)/$(srcdir) ;; \ - esac; \ - for i in $$list; do \ - if test -f "$$i"; then \ - echo "$(subdir)/$$i"; \ - else \ - echo "$$sdir/$$i"; \ - fi; \ - done >> $(top_builddir)/cscope.files - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done - $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$(top_distdir)" distdir="$(distdir)" \ - dist-hook -check-am: all-am -check: check-am -all-am: Makefile $(PROGRAMS) all-local -installdirs: -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -clean-generic: - -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." - -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) -clean: clean-am - -clean-am: clean-generic clean-libtool clean-local clean-noinstPROGRAMS \ - mostlyclean-am - -distclean: distclean-am - -rm -rf ./$(DEPDIR) - -rm -f Makefile -distclean-am: clean-am distclean-compile distclean-generic \ - distclean-tags - -dvi: dvi-am - -dvi-am: - -html: html-am - -html-am: - -info: info-am - -info-am: - -install-data-am: install-data-local - -install-dvi: install-dvi-am - -install-dvi-am: - -install-exec-am: - -install-html: install-html-am - -install-html-am: - -install-info: install-info-am - -install-info-am: - -install-man: - -install-pdf: install-pdf-am - -install-pdf-am: - -install-ps: install-ps-am - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-compile mostlyclean-generic \ - mostlyclean-libtool - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: - -.MAKE: install-am install-strip - -.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \ - clean-generic clean-libtool clean-local clean-noinstPROGRAMS \ - cscopelist-am ctags ctags-am dist-hook distclean \ - distclean-compile distclean-generic distclean-libtool \ - distclean-tags distdir dvi dvi-am html html-am info info-am \ - install install-am install-data install-data-am \ - install-data-local install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-compile \ - mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ - tags tags-am uninstall uninstall-am - - -@SET_MAKE@ - -# Rules - -$(top_builddir)/src/main/libgutenprint.la: - cd $(top_builddir)/src/main; \ - $(MAKE) - -$(top_builddir)/src/gutenprintui/libgutenprintui.la: - cd $(top_builddir)/src/gutenprintui; \ - $(MAKE) - -$(top_builddir)/src/gutenprintui2/libgutenprintui2.la: - cd $(top_builddir)/src/gutenprintui2; \ - $(MAKE) - -all-local: $(INSTALL_DATA_LOCAL_DEPS) - -install-data-local: $(INSTALL_DATA_LOCAL_DEPS) - if test -n "$(INSTALL_DATA_LOCAL_DEPS)" ; then \ - $(MAKE) install-kit FOOMATIC_DB=foomatic-db/gutenprint-ijs.@GUTENPRINT_RELEASE_VERSION@ ; \ - $(MAKE) install-kit FOOMATIC_DB=foomatic-db/gutenprint-ijs-simplified.@GUTENPRINT_RELEASE_VERSION@ ; \ - fi - -install-kit: - if test -n "$(DESTDIR)" ; then \ - $(mkdir_p) $(DESTDIR)`$(FOOMATIC_KITLOAD) -l` ; \ - $(FOOMATIC_KITLOAD) -f -d $(DESTDIR) -k $(FOOMATIC_DB) ; \ - else \ - $(FOOMATIC_KITLOAD) -f -k $(FOOMATIC_DB) ; \ - fi - -clean-local: - -$(RM) -rf foomatic-db - -foomatic-data: foomatic-stamp - -foomatic-stamp: foomatic-generator $(noinst_PROGRAMS) mk_printerlist $(top_builddir)/src/xml/xml-stamp - -$(RM) -rf foomatic-db - $(FOOMATIC_GENERATOR) -t $(srcdir)/foomatic-templates $(FOOMATIC_GENERATOR_EXTRA_OPTS) $(FOOMATIC_GENERATOR_FOOMATIC_3_OPTS) - $(FOOMATIC_GENERATOR) -s -t $(srcdir)/foomatic-templates $(FOOMATIC_GENERATOR_EXTRA_OPTS) $(FOOMATIC_GENERATOR_FOOMATIC_3_OPTS) - touch foomatic-stamp - -dist-hook: - for dir in $(DISTDIRS) ; do \ - if test -d $(srcdir)/$$dir ; then \ - mkdir $(distdir)/$$dir; \ - for dirfile in $(srcdir)/$$dir/*.xml; do \ - if test -f $$dirfile ; then \ - cp -p $$dirfile $(distdir)/$$dir; \ - fi \ - done \ - fi \ - done - -$(top_builddir)/src/xml/xml-stamp: - cd $(top_builddir)/src/xml; $(MAKE) xml-stamp - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/src/foomatic/foomatic-generator.in b/src/foomatic/foomatic-generator.in deleted file mode 100644 index c4e87f0..0000000 --- a/src/foomatic/foomatic-generator.in +++ /dev/null @@ -1,1833 +0,0 @@ -#!@PERL@ -# -*- perl -*- - -# Get command line options -use Getopt::Long; -Getopt::Long::Configure("no_ignore_case", "pass_through"); -GetOptions("t=s" => \$opt_t, # Template directory - "f=s" => \$opt_f, # Foomatic version - "d=s" => \@opt_d, # which Drivers? - "s" => \$opt_s, # Generate simplified data - "x" => \$opt_x); # Generate printer list - -my $simplified = 0; -my $simplified_subopt = ""; -my $simplified_suffix = ""; -if ($opt_s) { - $simplified = 1; - $simplified_subopt = "-s"; - $simplified_suffix = "-simplified"; -} - - -my $templatedir; -$templatedir = $opt_t; - -my @drivertypes = ("ijs"); - -exit 0 if ($#drivertypes < 0); # Nothing to be done, exit silently - -# Do we have Foomatic 2.9 or newer -my $foomatic3 = ((defined($opt_f)) && ($opt_f >= 2.9)); - -# The following substitutions happen to the template XML files: -# @@STPVER@@ - the version number (e. g. "5.0.0-beta4") -# @@STPREL@@ - the version number (e. g. "5.0") -# @@REMAP@@ - option remappings (to shorten names) -# @@DRVNAME@@ - driver name (ie gutenprint) -# @@STPRINTERS@@ - <printers>...</printers> clause for the driver -# @@OPTCONSTRAINTS@@ - <constraints>...</constraints> object for the option -# @@ENUMVALS@@ - <enum_vals>...</enum_vals> section for the enum option -# @@MINVAL@@ - minimum value for numeric setting -# @@MAXVAL@@ - maximum value for numeric setting -# @@DEFVAL@@ - default value for numeric setting - -# For some things, there are option-specific root-around-n-writer -# functions. So we have a dispatch table: -# -# function arguments are: ('StpDriverOptionName') - -my $funcs = { 'Model' => { 'OPTCONSTRAINTS' => \&build_model_cons, - 'ENUMVALS' => \&build_model_ev }, - 'RenderResolution' => { 'OPTCONSTRAINTS' => \&build_resolution_cons, - 'ENUMVALS' => \&build_resolution_ev }, - 'PrintoutMode' => { 'OPTCONSTRAINTS' => - \&build_printoutmode_cons, - 'ENUMVALS' => - \&build_printoutmode_ev }, - }; - -my $drivervals = { 'PageSize' => \&optmap_pagesize, - 'Color' => \&optmap_color - }; - -my $debug = 0; - -$colormap = { 'ijs' => { 'Grayscale' => 'DeviceGray', - 'Color' => 'DeviceRGB', - 'BlackAndWhite' => - 'DeviceGray -dBitsPerSample=1', - 'RawCMYK' => 'DeviceCMYK' } - }; - -my $groupname_prefix = "Gutenprint"; - -my @parameter_class_names = ( - "Printer Features", - "Output Control" - ); - -my @parameter_level_names = ( - "Common", - "Extra 1", - "Extra 2", - "Extra 3", - "Extra 4", - "Extra 5" - ); - -my $option_remap = ""; -my $opt_index = 0; - -if (! $opt_x) { - open PIPE, "./printer_options $simplified_subopt|" or die "Cannot run printer_options: $!\n"; - print STDERR "Loading options from ./printer_options $simplified_subopt..."; - while(<PIPE>) { - #print $_; - next if m!^#!; - eval $_; - } - close PIPE or die "Cannot run printer_options: $!\n"; - print STDERR "done.\n"; - - if ($foomatic3) { - open PIPE, "./printer_margins $simplified_subopt|" or die "Cannot run printer_margins: $!\n"; - print STDERR "Loading margins from ./printer_margins $simplified_subopt..."; - while(<PIPE>) { - #print $_; - next if m!^#!; - eval $_; - } - close PIPE or die "Cannot run printer_margins: $!\n"; - print STDERR "done.\n"; - } -} - -%foomap = (); -%mapfoo = (); -$errors = 0; - -open PIPE, "./printers|" or die "Cannot run printers: $!\n"; -print STDERR "Loading printers from ./printers..."; -while(<PIPE>) { - #print $_; - next if m!^#!; - eval $_ or die "\nCan't parse `$_' $@\n"; -} -close PIPE or die "Cannot run printers: $!\n"; -die "\nCannot continue\n" if ($errors > 0); -print STDERR "done.\n"; - -if ($opt_x) { - my (%printer_long_name) = reverse %printer_name; - for (sort keys %printer_long_name) { - my ($pn) = $printer_long_name{$_}; - next if $printer_family{$pn} eq "ps" || $printer_family{$pn} eq "raw"; - printf("%s %s %s\n", $_, $pn, $foomap{$pn}); - } - exit; -} - -# OK, now %stpdata is a big honking thing, and %defaults is in there, too. - -# Invert, to build %bar{$optionname} = [ choice1, choice2 ]; -my ($a, $b, $otmp, $vtmp); -for $a (sort keys(%stpdata)) { - for $otmp (sort keys %{$stpdata{$a}}) { - for $vtmp (sort keys (%{$stpdata{$a}{$otmp}})) { - if (!$seen_evchoice{$otmp}{$vtmp}++) { - push (@{$ev_choices{$otmp}}, [ $vtmp, - $stpdata{$a}{$otmp}{$vtmp}]); - } - } - } -} - -#print Dumper(%ev_choices); - -if ($foomatic3) { - # Generate data for "PrintoutMode" option, only needed for - # Foomatic 2.9.x or newer - print STDERR "Generating data for \"PrintoutMode\" option..."; - ($printoutmode, $printoutmodechoices) = getprintoutmode(); - print STDERR "done.\n"; - # Foomatic >= 2.9: Make a list of all choice entries needed in the - # "PrintoutMode" option XML file. Note: every choice ("Draft", - # "Normal", ...) will appear several times, but with different - # strings in "<ev_driverval>". Constraints will make only the - # right choices getting into the PPD file. Assign a unique ID to - # each entry. - for $a (sort keys(%{$printoutmode})) { - for $vtmp (sort keys %{$printoutmode->{$a}}) { - my $mode = $printoutmode->{$a}{$vtmp}; - if (!$seen_modes{$vtmp}{$mode}++) { - if (!defined($nums{$vtmp})) { - $nums{$vtmp} = 0; - } - $nums{$vtmp} ++; - $modes{$vtmp}{$mode} = "$vtmp-$nums{$vtmp}"; - } - } - } -} - -# Make list of needed Foomatic entries for the numerical options. If -# for one and the same numerical option there are printers with -# different value ranges, there must be made an extra Foomatic entry -# for each value range. Therefore the filenames of numerical options -# are numbered (eg. Contrast-1.xml). -for $a (sort keys(%stp_float_values)) { - for $otmp (sort keys %{$stp_float_values{$a}}) { - for $vtmp (sort keys %{$stp_float_values{$a}{$otmp}}) { - my $min = $stp_float_values{$a}{$otmp}{'MINVAL'}; - my $max = $stp_float_values{$a}{$otmp}{'MAXVAL'}; - my $def = $stp_float_values{$a}{$otmp}{'DEFVAL'}; - # Skip options with invalid values, the library contains such - # options in the case when only one constant value is allowed - next if (($min >= $max) || ($def < $min) || ($def > $max)); - my $minmax = "${min}_${max}"; - if (!$seen_fnumopt{$otmp}{$minmax}++) { - if (!defined($fnums{$otmp})) { - $fnums{$otmp} = 0; - } - $fnums{$otmp} ++; - push (@floatnumopts_list, "${otmp}-$fnums{$otmp}"); - $numopt_ranges{"${otmp}-$fnums{$otmp}"}{'MINVAL'} = $min; - $numopt_ranges{"${otmp}-$fnums{$otmp}"}{'MAXVAL'} = $max; - } - } - } -} -for $a (sort keys(%stp_int_values)) { - for $otmp (sort keys %{$stp_int_values{$a}}) { - for $vtmp (sort keys %{$stp_int_values{$a}{$otmp}}) { - my $min = $stp_int_values{$a}{$otmp}{'MINVAL'}; - my $max = $stp_int_values{$a}{$otmp}{'MAXVAL'}; - my $def = $stp_int_values{$a}{$otmp}{'DEFVAL'}; - # Skip options with invalid values, the library contains such - # options in the case when only one constant value is allowed - next if (($min >= $max) || ($def < $min) || ($def > $max)); - my $minmax = "${min}_${max}"; - if (!$seen_inumopt{$otmp}{$minmax}++) { - if (!defined($inums{$otmp})) { - $inums{$otmp} = 0; - } - $inums{$otmp} ++; - push (@intnumopts_list, "${otmp}-$inums{$otmp}"); - $numopt_ranges{"${otmp}-$inums{$otmp}"}{'MINVAL'} = $min; - $numopt_ranges{"${otmp}-$inums{$otmp}"}{'MAXVAL'} = $max; - } - } - } -} - -for $a (sort keys(%stp_dimension_values)) { - for $otmp (sort keys %{$stp_dimension_values{$a}}) { - for $vtmp (sort keys %{$stp_dimension_values{$a}{$otmp}}) { - my $min = $stp_dimension_values{$a}{$otmp}{'MINVAL'}; - my $max = $stp_dimension_values{$a}{$otmp}{'MAXVAL'}; - my $def = $stp_dimension_values{$a}{$otmp}{'DEFVAL'}; - # Skip options with invalid values, the library contains such - # options in the case when only one constant value is allowed - next if (($min >= $max) || ($def < $min) || ($def > $max)); - my $minmax = "${min}_${max}"; - if (!$seen_inumopt{$otmp}{$minmax}++) { - if (!defined($inums{$otmp})) { - $inums{$otmp} = 0; - } - $inums{$otmp} ++; - push (@dimensionnumopts_list, "${otmp}-$inums{$otmp}"); - $numopt_ranges{"${otmp}-$inums{$otmp}"}{'MINVAL'} = $min; - $numopt_ranges{"${otmp}-$inums{$otmp}"}{'MAXVAL'} = $max; - } - } - } -} - -#print join("\n", @floatnumopts_list); -#print join("\n", @intnumopts_list); -#print join("\n", @dimensionnumopts_list); - -# Figure out version etc -open PIPE, "./gutenprint-version|" or die "Cannot run gutenprint-version: $!\n"; -my $stpvers = <PIPE>; -close PIPE or die "Cannot run gutenprint-version: $!\n"; -chomp $stpvers; - -open PIPE, "./gutenprint-version -|" or die "Cannot run gutenprint-version: $!\n"; -my $stprel = <PIPE>; -close PIPE or die "Cannot run gutenprint-version: $!\n"; -chomp $stprel; - -# Build <printers> clause... -my @printerlist = (); -push (@printerlist, " <printers>\n"); -my $p1; -for $p1 (sort keys(%mapstp)) { - push (@printerlist, " <!-- gutenprint driver: $p1 -->\n"); - for my $id (@{$mapstp{$p1}}) { - if ($foomatic3) { - # Add unprintable margins (only Foomatic 2.9.x) - push(@printerlist, " <printer>\n"); - push(@printerlist, " <id>$id</id>\n"); - push(@printerlist, " <margins>\n"); - my ($cleft, $cright, $ctop, $cbottom) = - (undef, undef, undef, undef); - if (defined($imageableareas{$p1}{'Custom'})) { - $cleft = $imageableareas{$p1}{'Custom'}{'left'}; - $cright = $imageableareas{$p1}{'Custom'}{'right'}; - $ctop = $imageableareas{$p1}{'Custom'}{'top'}; - $cbottom = $imageableareas{$p1}{'Custom'}{'bottom'}; - push(@printerlist, " <general>\n"); - push(@printerlist, " <relative />\n"); - push(@printerlist, " <left>$cleft</left>\n"); - push(@printerlist, " <right>$cright</right>\n"); - push(@printerlist, " <top>$ctop</top>\n"); - push(@printerlist, " <bottom>$cbottom</bottom>\n"); - push(@printerlist, " </general>\n"); - } - for my $ps (sort keys %{$imageableareas{$p1}}) { - next if $ps eq 'Custom'; # We have done "Custom" already - my ($left, $right, $top, $bottom, $width, $height); - $left = $imageableareas{$p1}{$ps}{'left'}; - $right = $imageableareas{$p1}{$ps}{'right'}; - $top = $imageableareas{$p1}{$ps}{'top'}; - $bottom = $imageableareas{$p1}{$ps}{'bottom'}; - $width = $imageableareas{$p1}{$ps}{'width'}; - $height = $imageableareas{$p1}{$ps}{'height'}; - # If the <general> section serves for this paper size, - # do not define an <exception> - next if ((defined($cleft)) && - ($left == $cleft) && - ($right == $width - $cright) && - ($top == $height - $ctop) && - ($bottom == $cbottom)); - push(@printerlist, " <exception PageSize=\"$ps\">\n"); - push(@printerlist, " <absolute />\n"); - if ($left != $cleft) { - push(@printerlist, " <left>$left</left>\n"); - } - if ($right != $width - $cright) { - push(@printerlist, " <right>$right</right>\n"); - } - if ($top != $height - $ctop) { - push(@printerlist, " <top>$top</top>\n"); - } - if ($bottom != $cbottom) { - push(@printerlist, " <bottom>$bottom" . - "</bottom>\n"); - } - push(@printerlist, " </exception>\n"); - } - push(@printerlist, " </margins>\n"); - push(@printerlist, " </printer>\n"); - } else { - # Printer IDs only - push(@printerlist, " <printer><id>$id</id></printer>\n"); - } - } -} -push (@printerlist, " </printers>\n"); - -$drivernameprefix = "gutenprint"; -print STDERR "Using driver name prefix \"$drivernameprefix\"\n"; - -my $generalsubs = { 'STPVER' => $stpvers, - 'STPREL' => $stprel, - 'REMAP' => $option_remap, - 'DRVNAME' => $drivernameprefix, - 'STPRINTERS' => join('', @printerlist) }; - -my $optiongroups = { 'PageSize' => 'General', - 'STP_InputSlot' => 'General', - 'STP_MediaType' => 'General', - 'PrintoutMode' => 'General', - 'STP_RenderResolution' => 'General', - 'STP_Quality' => 'General', - 'Color' => 'General', - 'STP_ImageType' => 'General'}; - -my @numericsubs = ('MINVAL', 'MAXVAL'); - -my $specialoutputfilenames = { 'Resolution' => 'PrinterResolution', - 'RenderResolution' => 'Resolution' }; - -# OK, make the db directory... -mkdir "foomatic-db", 0755 or - die "Cannot create directory foomatic-db: $!\n" - unless -d "foomatic-db"; - -# Now do stuff, already. Do the substitution into each file... -my $tmpl; -for $drivertype (@drivertypes) { - $drivertypesuffix = "-$drivertype"; - $drivertypesuffix =~ s/-gs//; - $drivertypesuffix .= "$simplified_suffix.$stprel"; - my $drvname = "$drivernameprefix$drivertypesuffix"; - $generalsubs->{'DRVNAME'} = $drvname; - print "Generating Foomatic data for driver \"$drvname\"...\n"; - - # OK, make the db heirarchy alongside the templates one... - mkdir "foomatic-db/$drvname", 0755 or - die "Cannot create directory foomatic-db/$drvname: $!\n" - unless -d "foomatic-db/$drvname"; - mkdir "foomatic-db/$drvname/opt", 0755 or - die "Cannot create directory foomatic-db/$drvname/opt: $!\n" - unless -d "foomatic-db/$drvname/opt"; - mkdir "foomatic-db/$drvname/driver", 0755 or - die "Cannot create directory foomatic-db/$drvname/driver: $!\n" - unless -d 'foomatic-db/$drvname/driver'; - - my $order = 1000; - my %numoptionorders; - -# opendir TDIR, "$templatedir-$drivertype" or -# die "Cannot open templates directory: $!\n"; - - for $fooopt (sort(keys(%ev_choices)), - sort(@floatnumopts_list, @dimensionnumopts_list, - @intnumopts_list), - "PrintoutMode", "Model", - "RenderResolution", "gutenprint") { - - # The "PrintoutMode" option is only supported by Foomatic 2.9.x or - # newer (preliminary skipped always, do not remove the - # infrastructure for "PrintoutMode", it will be re-activated later - # on) - next if ((!$foomatic3) && ($fooopt eq "PrintoutMode")); - - # "x_resolution" and "y_resolution" appear in %ev_choices but are - # not option names, so skip them - next if $fooopt =~ /^[xy]_resolution$/; - - my ($num_opt, $type, $tmpl); - if (member($fooopt, @floatnumopts_list)) { - $num_opt = 1; - $type = "float"; - $tmpl = "NumericalOptions.xml"; - } elsif (member($fooopt, @intnumopts_list)) { - $num_opt = 1; - $type = "int"; - $tmpl = "NumericalOptions.xml"; - } elsif (member($fooopt, @dimensionnumopts_list)) { - $num_opt = 1; - $type = "dimension"; - $tmpl = "NumericalOptions.xml"; - } else { - $num_opt = 0; - $type = "enum"; - $tmpl = "${fooopt}.xml"; - $tmpl = "OtherOptions.xml" - if ! -r "$templatedir-$drivertype/$tmpl"; - } - - # Remove number appended to the end of the file name of - # numerical options - my $shortname = $fooopt; - $shortname =~ s!-\d+$!!; - - #my $stpopt = $argnamemap{$shortname}; - #$stpopt = $shortname if ! defined ($stpopt); - my $stpopt = $shortname; - -# print STDERR "Argnamemap '$fooopt' => '$stpopt'\n"; - - open TMPL, "$templatedir-$drivertype/$tmpl"; - my @datafile = <TMPL>; - close TMPL; - - print STDERR "Processing \"$fooopt\"..."; - - my $template = join('',@datafile); - - # First, do the generic substitutions. - - my ($substr); - for $substr (keys(%$generalsubs)) { - my $substitution = $generalsubs->{$substr}; - $template =~ s!\@\@$substr\@\@!$substitution!g; - } - - # Put the options into PPD groups (Foomatic >= 2.9) - - if ($foomatic3) { - my $group; - if (defined($optiongroups->{$shortname})) { - # Group names given by table (esp. "General" for special - # Options) - $group = $optiongroups->{$shortname}; - } elsif (defined($param_classes{$shortname}) && - defined($param_levels{$shortname}) && - $parameter_class_names[$param_classes{$shortname}] && - $parameter_level_names[$param_levels{$shortname}]) { - # Group names given by libgutenprint - $group = $groupname_prefix . " " . - $parameter_class_names[$param_classes{$shortname}] . " " . - $parameter_level_names[$param_levels{$shortname}]; - # Remove the spaces (the name with spaces Foomatic will - # generate automatically) - $group =~ s! !!g; - } else { - # All the above did not assign a group name? Use - # "Miscellaneous" (Should usually not happen) - $group = "Miscellaneous"; - } - my $substitution = "\n <arg_group>" . - $group . "</arg_group>"; - $template =~ s!\@\@GROUP\@\@!$substitution!g; - } else { - $template =~ s!\@\@GROUP\@\@!!g; - } - - # Now do the numeric substitutions - - $template =~ s!\@\@TYPE\@\@!$type!g; - for $substr (@numericsubs) { - my $substitution; - my $substitution = $numopt_ranges{$fooopt}{$substr}; - $template =~ s!\@\@$substr\@\@!$substitution!g; - } - - # Substitutions for generic template files - - my $lowercaseshortname = lc($fooopt); - my $subopt = $stpopt; - - # The maximum length of the short name of an option is 31 - # characters to be accepted in a PPD. The maximum length of a - # main keyword in a PPD is 40 characters, with - # "FoomaticRIPDefault" having 18, a short name of a numerical - # option (only those have "FoomaticRIPDefault" entries) is 22. - - # We do not touch options whose names are short enough. - - # As this problem did not occur with Gimp Print 4.2.7, none of - # the option names modified here already existed in - # Gimp-Print, all options concerned are new Gutenprint - # options. We also do not modify the parameters to be inserted - # in the GhostScript command line, so the Gutenprint library - # or the IJS server do not need to be modified. - - my $maxlen = ($type eq "enum" ? 31 : 22); - my $shortopt = $subopt; - if (length($subopt) > $maxlen) { - my $nostpopt = $stpopt; - $nostpopt =~ s/^STP_//; - my $stropt = sprintf("%03d", $opt_index); - $shortopt = "STP_OPT_$stropt"; - $opt_index++; - } - if ($tmpl !~ /^$fooopt/) { - $template =~ s!\@\@LOWERCASESHORTNAME\@\@!$lowercaseshortname!g; - $template =~ s!\@\@LONGNAME\@\@!$longnames{$shortname}!g; - $template =~ s!\@\@SHORTNAME\@\@!$shortopt!g; - if ($shortname =~ /^STP_Enable(.*)$/) { - $numoptionorders{$1} = $order; - $template =~ s!\@\@ORDER\@\@!$order!g; - $order += 10; - } else { - $shortname =~ /^STP_(.*)$/; - my $basename = $1; - if (my $enableorder = $numoptionorders{$basename}) { - $enableorder ++; - $template =~ s!\@\@ORDER\@\@!$enableorder!g; - } else { - $template =~ s!\@\@ORDER\@\@!$order!g; - $order += 10; - } - } - $template =~ s!\@\@SPOT\@\@!B!g; - $template =~ s!\@\@PROTO\@\@!$subopt=\%s,!g; - } - - # Now do special-purpose substitutions - - for $substr (keys(%{$funcs->{$fooopt}})) { - my $substitution = &{$funcs->{$fooopt}{$substr}}($stpopt); - if (defined($substitution)) { - $template =~ s!\@\@$substr\@\@!$substitution!g; - } - } - - if ($template =~ m!\@\@OPTCONSTRAINTS\@\@!) { - my $substitution = ($num_opt ? build_num_cons($fooopt) : - build_cons($stpopt)); - # Skip this option if there are no constraints (no printers - # using this option) - if ($substitution !~ m!</constraint>!s) { - print STDERR "No printers using $fooopt\n"; - next; - } - if (defined($substitution)) { - $template =~ s!\@\@OPTCONSTRAINTS\@\@!$substitution!g; - } - } - if ($template =~ m!\@\@ENUMVALS\@\@!) { - my $substitution = build_ev($stpopt); - # Skip this option if there are no choices (an enum option - # without choices does not make sense) - if ($substitution !~ m!</ev_shortname>!s) { - print STDERR "No choices for $fooopt\n"; - next; - } - if (defined($substitution)) { - $template =~ s!\@\@ENUMVALS\@\@!$substitution!g; - } - } - - # Any more? - grep (m!\@\@([^\@]+)\@\@!g - && do { warn " Unknown substitution $1 in $fooopt!\n"; }, - split("\n",$template)); - - # File name for the option XML file - - $tmpl = "${fooopt}.xml" if $tmpl !~ /^$fooopt\.xml$/; - - if (my $f = $specialoutputfilenames->{$fooopt}) { - $tmpl = "${f}.xml"; - } - - # Finally, write out the new file - - # Options are under opt/ - my $dbfilename = lc("foomatic-db/$drvname/opt/$drvname-$tmpl"); - - # Special case the actual driver file under driver/ - $dbfilename = "foomatic-db/$drvname/driver/$drvname.xml" - if ($tmpl eq 'gutenprint.xml'); - - open NEWF, "> $dbfilename" or die "Cannot create $dbfilename: $!"; -# print STDERR "writing $dbfilename..."; - print NEWF $template; - print STDERR "done.\n"; - close NEWF; - - } - - closedir TDIR; - - # The paper size and resolution maps must be regenerated for the next - # driver, because the "driverval"s are different for the different - # drivers. So delete the caches. - undef $pagemap; - undef %rescache; - -} - - -# member( $a, @b ) returns 1 if $a is in @b, 0 otherwise. -sub member { my $e = shift; foreach (@_) { $e eq $_ and return 1 } 0 }; - -sub get_ev_shortname { - my ($val) = @_; - $val =~ s/ //g; - $val =~ s/\///g; - $val =~ s/\://g; - return $val; -} - -sub get_ev_key { - my ($val, $drv) = @_; - return ("ev/$drv-" . get_ev_shortname($val)); -} - -sub build_ev { - my ($stpopt) = @_; - my $drvname = "$drivernameprefix$drivertypesuffix"; - - my @vals = (); - - # OK, now for each enum_val - my $ev; - for $ev (@{$ev_choices{$stpopt}}) { - # Put in the basic choice info: ev names, etc - my $ev_longname = @$ev[1]; - my $ev_shortname = @$ev[0]; - - my $ev_id = get_ev_key($ev_shortname, $drvname); - my $ev_driverval; - - # Either call a per-option function to get the driverval, or - # just use the string choice name. - if (defined($drivervals->{$stpopt})) { - $ev_driverval = &{$drivervals->{$stpopt}}($ev_shortname); - die "Undefined driverval for option $stpopt value $ev_shortname!\n" - if (! defined($ev)); - } else { - $ev_driverval = $ev_shortname; - } - # Remove "Roll" paper sizes, user has to use "Custom" instead. - next if (($stpopt eq "STP_PageSize") && ($ev_driverval eq "")); - push (@vals, - " <enum_val id='$ev_id'>\n", - " <ev_longname><en>$ev_longname</en></ev_longname>\n", - " <ev_shortname><en>$ev_shortname</en></ev_shortname>\n", - " <ev_driverval>$ev_driverval</ev_driverval>\n", - " <constraints>\n", - " <!-- Assume the option doesn't apply... -->\n", - " <constraint sense='false'>\n", - " <driver>$drvname</driver>\n", - " </constraint>\n"); - - # Build constraints for this particular choice - my $stpprn; - for $stpprn (sort keys(%stpdata)) { - my $fooprn; - for $fooprn (@{$mapstp{$stpprn}}) { - if ($stpdata{$stpprn}{$stpopt}{$ev_shortname}) { - # OK, this choice applies to this printer - push (@vals, - " <constraint sense='true'>\n", - " <!-- $fooprn == $stpprn -->\n", - " <driver>$drvname</driver>\n", - " <printer>$fooprn</printer>\n", - " </constraint>\n"); - } - } - } - - push (@vals, - " </constraints>\n", - " </enum_val>\n"); - } - - return join('', - "<enum_vals>\n", - @vals, - " </enum_vals>\n"); -} - -sub build_cons { - - my ($stpopt) = @_; - - my $drvname = "$drivernameprefix$drivertypesuffix"; - - my @PNCONS = (); - - # For each stp printer... - my $stpname; - for $stpname (sort keys(%stpdata)) { - - if (0) { - print STDERR " Processing gutenprint printer $stpname...\n"; - print STDERR - " There are no foomatic printers mapped to $stpname!?\n" - if !$mapstp{$stpname}; - print STDERR " \%stpdata key is {$stpname}{$stpopt}\n"; - } - - # Add this printer to argument constraints? - if ($stpdata{$stpname}{$stpopt}) { - - # What's the default value? - my $stpdef = $defaults{$stpname}{$stpopt}; - - # If there's no default, then this option doesn't apply to - # this printer. - if (defined($stpdef)) { - - my $foodefval = get_ev_key($stpdef, $drvname); - - if (0) { - print STDERR - " Default for $stpname/$stpopt is $stpdef aka $foodefval\n"; - } - - my $fooname; - for $fooname (@{$mapstp{$stpname}}) { - - if (0) { - print STDERR - " Printer $fooname takes option $stpopt.\n"; - } - - push (@PNCONS, - " <constraint sense='true'>\n", - " <driver>$drvname</driver>\n", - " <printer>$fooname</printer><!-- gutenprint name: $stpname -->\n", - " <arg_defval>$foodefval</arg_defval>\n", - " </constraint>\n"); - } - } - } - - } - - return join('', - "<constraints>\n", - @PNCONS, - " </constraints>\n"); -} - -sub build_num_cons { - - my ($foooptfile) = @_; - - my $drvname = "$drivernameprefix$drivertypesuffix"; - - my @PNCONS = (); - - # Do we have a float or an int option? - my $type; - if (member($foooptfile, @floatnumopts_list)) { - $type = "float"; - } elsif (member($foooptfile, @dimensionnumopts_list)) { - $type = "dimension"; - } else { - $type = "int"; - } - - # Name of the actual option - my $stpopt = $foooptfile; - $stpopt =~ s!-\d+$!!; - - # For each stp printer... - my $stpname; - for $stpname (sort keys(%stpdata)) { - - if (0) { - print STDERR " Processing gutenprint printer $stpname...\n"; - print STDERR - " There are no foomatic printers mapped to $stpname!?\n" - if !$mapstp{$stpname}; - } - - # Add this printer to argument constraints? The printer must provide - # this option and a default value for it. - my $stpdef; - if ((defined($stpdef = - $stp_float_values{$stpname}{$stpopt}{"DEFVAL"})) || - (defined($stpdef = - $stp_int_values{$stpname}{$stpopt}{"DEFVAL"})) || - (defined($stpdef = - $stp_dimension_values{$stpname}{$stpopt}{"DEFVAL"}))) { - # Find minimum and maximum - my ($min, $max); - if ($type eq "float") { - $min = $stp_float_values{$stpname}{$stpopt}{"MINVAL"}; - $max = $stp_float_values{$stpname}{$stpopt}{"MAXVAL"}; - } elsif ($type eq "dimension") { - $min = $stp_dimension_values{$stpname}{$stpopt}{"MINVAL"}; - $max = $stp_dimension_values{$stpname}{$stpopt}{"MAXVAL"}; - } else { - $min = $stp_int_values{$stpname}{$stpopt}{"MINVAL"}; - $max = $stp_int_values{$stpname}{$stpopt}{"MAXVAL"}; - } - # Does the range of this option with this printer match - # the Foomatic option entry we are building currently? - if (defined($numopt_ranges{$foooptfile}{'MINVAL'}) && - defined($numopt_ranges{$foooptfile}{'MAXVAL'}) && - ($min == $numopt_ranges{$foooptfile}{'MINVAL'}) && - ($max == $numopt_ranges{$foooptfile}{'MAXVAL'})) { - - if (0) { - print STDERR - " Default for $stpname/$stpopt is $stpdef\n"; - } - - my $fooname; - for $fooname (@{$mapstp{$stpname}}) { - - if (0) { - print STDERR - " Printer $fooname takes option $stpopt.\n"; - } - - push (@PNCONS, - " <constraint sense='true'>\n", - " <driver>$drvname</driver>\n", - " <printer>$fooname</printer><!-- gutenprint name: $stpname -->\n", - " <arg_defval>$stpdef</arg_defval>\n", - " </constraint>\n"); - } - } - } - - } - - return join('', - "<constraints>\n", - @PNCONS, - " </constraints>\n"); -} - -sub optmap_pagesize { - my ($value) = @_; - - if (!defined $pagemap) { - open PUTIL, "./paper_sizes |" or die "Cannot run paper_sizes: $!\n"; - while (<PUTIL>) { - chomp; - $_ =~ m!^\s*(.+\S)\s+([0-9]+)\s+([0-9]+)\s*$!; - my ($name, $width, $height) = ($1, $2, $3); - if (($width > 0 and $height > 0) or - ($name eq "Custom")) { - $pagemap->{$name} = "-dDEVICEWIDTHPOINTS=$width -dDEVICEHEIGHTPOINTS=$height"; -# print STDERR "PageSize '$name' driverval '$width $height'\n"; - } - } - close PUTIL; - } - - return $pagemap->{$value} -} - -sub optmap_color { - my ($value) = @_; - if (defined $colormap->{$drivertype}{$value}) { - return $colormap->{$drivertype}{$value}; - } else { - die "Cannot map output type '$value'\n"; - } -} - -sub build_model_cons { - my ($stpopt) = @_; - my $drvname = "$drivernameprefix$drivertypesuffix"; - - - # OK, this is funky. For each stp model, we have a choice. That - # choice is valid for only the foo printers that correspond. For - # any given foo printer, there is *exactly one* available choice. - # The defval is the one available choice. Backends and - # applications do not show options with only one choice; they just - # select that choice. So we don't bother to make pretty option - # names or anything. - # - # See also build_model_ev() - - my @PNCONS = (); - - # For each stp printer... - my $stpname; - for $stpname (sort keys(%mapstp)) { - - # For each possible foo name - my $fooname; - for $fooname (@{$mapstp{$stpname}}) { - - # What's the default value? - my $foodefval = get_ev_key($stpname, $drvname); - - push (@PNCONS, - " <constraint sense='true'>\n", - " <driver>$drvname</driver>\n", - " <printer>$fooname</printer>\n", - " <arg_defval>$foodefval</arg_defval>\n", - " </constraint>\n"); - } - } - - return join('', - "<constraints>\n", - @PNCONS, - " </constraints>\n"); - - -} - -# See build_model_cons, above. -sub build_model_ev { - my ($stpopt) = @_; - my $drvname = "$drivernameprefix$drivertypesuffix"; - - my @vals = (); - - # OK, now for each enum_val - my $ev; - for $ev (sort keys(%mapstp)) { - # Put in the basic choice info: ev names, etc - my $ev_shortname = $ev; - my $ev_longname = $printer_name{$ev}; - my $make = $printer_make{$ev}; - my $ev_shortname = get_ev_shortname($ev); - my $ev_id = get_ev_key($ev, $drvname); - my $ev_driverval; - $ev_driverval = "-sDeviceManufacturer=$make -sDeviceModel=$ev"; - push (@vals, - " <enum_val id='$ev_id'>\n", - " <ev_longname><en>$ev_longname</en></ev_longname>\n", - " <ev_shortname><en>$ev_shortname</en></ev_shortname>\n", - " <ev_driverval>$ev_driverval</ev_driverval>\n", - " <constraints>\n", - " <!-- Assume the option doesn't apply... -->\n", - " <constraint sense='false'>\n", - " <driver>$drvname</driver>\n", - " </constraint>\n", - " <!-- ...except to these: -->\n", - ); - - # This stp Model value applies only to mapped foo printers - my $fooprn; - for $fooprn (@{$mapstp{$ev}}) { - - # OK, this choice applies to this enum - push (@vals, - " <constraint sense='true'>\n", - " <!-- Model $ev for $fooprn -->\n", - " <driver>$drvname</driver>\n", - " <printer>$fooprn</printer>\n", - " </constraint>\n"); - } - - push (@vals, - " </constraints>\n", - " </enum_val>\n"); - } - - return join('', - "<enum_vals>\n", - @vals, - " </enum_vals>\n"); -} - - -# Stuff for Resolution. -# -# printer_options gives us Quality information. We examine this to -# determine what to do for the gs resolution argument. - -sub compute_resolutions { - my ($stpname) = @_; - - my $drvname = "$drivernameprefix$drivertypesuffix"; - - if (!defined($rescache{$stpname})) { - - my @reslist = (); - my %hash; - my $defval; - - my $qual; - for $qual (sort keys(%{$stpdata{$stpname}{'STP_Resolution'}})) { - my ($x) = $stpdata{$stpname}{'x_resolution'}{$qual}; - my ($y) = $stpdata{$stpname}{'y_resolution'}{$qual}; - - my $r = {'x' => $x, - 'y' => $y, - 'driverval' => "${x}x${y}", - 'ev_key' => get_ev_key("res-$x-$y", $drvname) - }; - push (@reslist, $r); - - # Default? - $defval = get_ev_key("res-$x-$y", $drvname) - if ($qual eq $defaults{$stpname}{'STP_Resolution'}); - - # Note that this resolution value exists - $resolutions{"$x $y"} = { 'x' => $x, - 'y' => $y }; - - # Note that this printer takes this resolution - $hash{$x}{$y} = 1; - - } - - $rescache{$stpname}{'list'} = \@reslist; - $rescache{$stpname}{'defval'} = $defval; - $rescache{$stpname}{'takesit'} = \%hash; - } - - return $rescache{$stpname}; -} - -sub do_all_res { - my $n; - for $n (keys(%mapstp)) { - compute_resolutions($n); - } -} - -sub build_resolution_ev { - my ($stpopt) = @_; - my $drvname = "$drivernameprefix$drivertypesuffix"; - - my @vals = (); - - do_all_res(); - - # OK, now for each possible resolution... - my $ev; - for $ev (sort keys(%resolutions)) { - - my ($x, $y) = ($resolutions{$ev}{'x'}, $resolutions{$ev}{'y'}); - - # Put in the basic choice info: ev names, etc - my $ev_longname = "$x x $y dpi"; - my $ev_shortname = get_ev_shortname($ev_longname); - my $ev_id = get_ev_key("res-$x-$y", $drvname); - my $ev_driverval = "${x}x${y}"; - - push (@vals, - " <enum_val id='$ev_id'>\n", - " <ev_longname><en>$ev_longname</en></ev_longname>\n", - " <ev_shortname><en>$ev_shortname</en></ev_shortname>\n", - " <ev_driverval>$ev_driverval</ev_driverval>\n", - " <constraints>\n", - " <!-- Assume the option doesn't apply... -->\n", - " <constraint sense='false'>\n", - " <driver>$drvname</driver>\n", - " </constraint>\n", - " <!-- ...except to these: -->\n", - ); - - # Now, for each printer, put in a constraint if this - # resolution makes sense or not... - my $stpprn; - for $stpprn (sort keys(%mapstp)) { - - my $resobj = compute_resolutions($stpprn); - my $takesit = $resobj->{'takesit'}{$x}{$y}; - - if ($takesit) { - my $fooprn; - for $fooprn (@{$mapstp{$stpprn}}) { - -# print STDERR "Printer $fooprn $stpprn uses ${x}x$y\n"; - - # OK, this choice applies to this enum - push (@vals, - " <constraint sense='true'>\n", - " <driver>$drvname</driver>\n", - " <printer>$fooprn</printer><!-- gutenprint name: $stpprn -->\n", - " </constraint>\n"); - } - } - - } - - push (@vals, - " </constraints>\n", - " </enum_val>\n"); - } - - return join('', - "<enum_vals>\n", - @vals, - " </enum_vals>\n"); -} - -sub build_resolution_cons { - my ($stpopt) = @_; - my $drvname = "$drivernameprefix$drivertypesuffix"; - - my @PNCONS = (); - - # For each stp printer... - my $stpname; - for $stpname (sort keys(%mapstp)) { - - # Get some resolution info - my $r = compute_resolutions($stpname); - - # For each possible foo name - my $fooname; - for $fooname (@{$mapstp{$stpname}}) { - - # What's the default value? - my $foodefval = $r->{'defval'}; - - push (@PNCONS, - " <constraint sense='true'>\n", - " <driver>$drvname</driver>\n", - " <printer>$fooname</printer><!-- gutenprint name: $stpname -->\n", - " <arg_defval>$foodefval</arg_defval>\n", - " </constraint>\n"); - } - } - - return join('', - "<constraints>\n", - @PNCONS, - " </constraints>\n"); -} - -sub build_printoutmode_ev { - my ($stpopt) = @_; - my $drvname = "$drivernameprefix$drivertypesuffix"; - - my @vals = (); - - # OK, now for each choice ("Draft", "Normal", ...) ... - my $choice; - for $choice (sort keys %modes) { - # ... and each possible "<ev_driverval>" for it - my $ev_driverval; - for $ev_driverval (sort keys %{$modes{$choice}}) { - # Put in the basic choice info: ev names, etc - my $ev_longname = $printoutmodechoices->{$choice}; - my $ev_shortname = $choice; - - my $ev_id = - get_ev_key($modes{$choice}{$ev_driverval}, $drvname); - - push (@vals, - " <enum_val id='$ev_id'>\n", - " <ev_longname><en>$ev_longname</en></ev_longname>\n", - " <ev_shortname><en>$ev_shortname</en></ev_shortname>\n", - " <ev_driverval>$ev_driverval</ev_driverval>\n", - " <constraints>\n", - " <!-- Assume the option doesn't apply... -->\n", - " <constraint sense='false'>\n", - " <driver>$drvname</driver>\n", - " </constraint>\n"); - - # Build constraints for this particular ev_driverval - my $stpprn; - for $stpprn (sort keys(%stpdata)) { - my $fooprn; - for $fooprn (@{$mapstp{$stpprn}}) { - if ($printoutmode->{$stpprn}{$choice} eq - $ev_driverval) { - # OK, this choice applies to this printer - push (@vals, - " <constraint sense='true'>\n", - " <!-- $fooprn == $stpprn -->\n", - " <driver>$drvname</driver>\n", - " <printer>$fooprn</printer>\n", - " </constraint>\n"); - } - } - } - - push (@vals, - " </constraints>\n", - " </enum_val>\n"); - } - } - - return join('', - "<enum_vals>\n", - @vals, - " </enum_vals>\n"); -} - -sub build_printoutmode_cons { - my ($stpopt) = @_; - my $drvname = "$drivernameprefix$drivertypesuffix"; - - my @PNCONS = (); - - # For each stp printer... - my $stpname; - for $stpname (sort keys(%mapstp)) { - - # For each possible foo name - my $fooname; - for $fooname (@{$mapstp{$stpname}}) { - - # What's the default value (always the "Normal" mode)? - my $normalmode = $printoutmode->{$stpname}{'Normal'}; - my $foodefval = get_ev_key($modes{'Normal'}{$normalmode}, - $drvname); - - push (@PNCONS, - " <constraint sense='true'>\n", - " <driver>$drvname</driver>\n", - " <printer>$fooname</printer>\n", - " <arg_defval>$foodefval</arg_defval>\n", - " </constraint>\n"); - } - } - - return join('', - "<constraints>\n", - @PNCONS, - " </constraints>\n"); -} - -sub qualityorder { - # List of suffixes of the Quality choices - my @suffixes = ( - # HP - "mono", - # General - "", - "dpi", - # Epson/Lexmark - "mw", - "mw2", - "sw", - "fol", - "fol2", - "fourp", - "uni", - "mwuni", - "mw2uni", - "swuni", - "foluni", - "fol2uni", - "fourpuni", - "hq", - "hquni", - "hq2", - "hq2uni", - "ov", - "oov", - # Canon - "dmt", - "dpi_high", - "dpi_high2", - "dpi_high3", - "dpi_high4", - "dpi_high5", - "dpi_highmono", - "dpi_highmono2", - "dpi_highmono3", - "dpi_highmono4", - "dpi_highmono5", - "dpi_mono", - "dpi_mono2", - "dpi_mono3", - "dpi_mono4", - "dpi_mono5", - "dpi_draft", - "dpi_draft2", - "dpi_draft3", - "dpi_draft4", - "dpi_draft5", - "dpi_std2", - "dpi_std3", - "dpi_std4", - "dpi_std5", - "dpi_draftmono", - "dpi_draftmono2", - "dpi_draftmono3", - "dpi_draftmono4", - "dpi_draftmono5", - "dpi_photohigh", - "dpi_photohigh2", - "dpi_photohigh3", - "dpi_photohigh4", - "dpi_photohigh5", - "dpi_tshirt", - "dpi_photomed", - "dpi_photomed2", - "dpi_photo", - "dpi_photo2", - "dpi_photo3", - "dpi_photo4", - "dpi_photo5", - "dpi_photodraft", - "dpi_photodraft2", - "dpi_photodraft3", - "dpi_photodraft4", - "dpi_photodraft5", - "dpi_photomonohigh", - "dpi_photomonohigh2", - "dpi_photomonomed", - "dpi_photomono", - "dpi_photomono2", - "dpi_photomonodraft", - "dpi_photomonodraft2", - "dpi_ohphigh", - "dpi_ohp", - "dpi_ohpdraft", - ); - my ($a, $b) = @_; - # Bring the suffixes to lower case - my $first = lc($a); - my $second = lc($b); - # Check whether they are in the @suffixes list - my $i; - for ($i = 0; $i <= $#suffixes; $i++) { - my $firstinlist = ($first eq $suffixes[$i]); - my $secondinlist = ($second eq $suffixes[$i]); - if (($firstinlist) && (!$secondinlist)) {return -1}; - if (($secondinlist) && (!$firstinlist)) {return 1}; - if (($firstinlist) && ($secondinlist)) {return 0}; - } - - # Unknown qualities - die "The quality choice suffixes $a and $b are unknown!\n"; - return 0; - -} - -sub getprintoutmode { - my $choicelongnames = { - 'Draft' => 'Draft (Economy)', - 'Draft.Gray' => 'Draft Grayscale (Economy)', - 'Normal' => 'Normal', - 'Normal.Gray' => 'Normal Grayscale', - 'High' => 'High Quality', - 'High.Gray' => 'High Quality Grayscale', - 'VeryHigh' => 'Very High Quality', - 'VeryHigh.Gray' => 'Very High Quality Grayscale', - 'Photo' => 'Photo', - 'Photo.Gray' => 'Photo Grayscale', - }; - - ### BASIC RULES - - # See mode-specific rules below - - # There must be always a "Normal" mode, this will be the default. - - # On black-and-white printers there are no modes with ".Gray" - # specifier, the standard modes are already grayscale. - - # No "Photo" mode on laser printers. - - # If on a PCL printer "600mono" is the chose quality, it will be - # replaced by "300dpi" in color mode (This can lead to a mode being - # removed by the following two rules). - - # If "VeryHigh" has exactly the same settings as "High", "VeryHigh" - # is left out. - - # If "High" has exactly the same settings as "Normal", "High" - # is left out. - - # If nothing is found for a certain mode, this mode is left out. - - my $modes = {}; - # Treat all printers - my $stpprn; - for $stpprn (sort keys(%stpdata)) { - my $modeinfo = {}; - my ($draftminres, $draftbestsymmetry, $draftlowestqualstr) = - (99999999, 99999999, "xxx"); - my ($normalminres, $normalbestsymmetry, $normaluni, - $normallowestqualstr) = - (99999999, 99999999, 0, "xxx"); - my ($highmaxres, $highbestsymmetry, $highbestqualstr) = - (0, 99999999, ""); - my ($veryhighmaxres, $veryhighbestsymmetry, $veryhighbestqualstr) = - (0, 99999999, ""); - my ($photomaxres, $photobestsymmetry, $photobestqualstr) = - (0, 99999999, ""); - # Go through all choices of the "Quality" option and find the - # best values for the "PrintoutMode" option - my $quality; - for $quality (sort keys(%{$stpdata{$stpprn}{'STP_Resolution'}})) { - - my ($xres, $yres, $qualstr); - if ($quality =~ /^(\d+)x(\d+)(\D.*)?$/) { - $xres = $1; - $yres = $2; - $qualstr = $3; - } elsif ($quality =~ /^(\d+)(\D.*)?$/) { - $xres = $1; - $yres = $1; - $qualstr = $2; - } else { - $xres = $stpdata{$stpprn}{'x_resolution'}; - $yres = $stpdata{$stpprn}{'y_resolution'}; - $qualstr = $quality; - } - # Resolution in dots per square inch - my $respersquareinch = $xres * $yres; - # Symmetry: Shows how far from symmetric a resolution is, - # the smaller, the more symmetric, symmetric resolutions (as - # 300x300 dpi) give zero. - my $symmetry = abs(log($yres/$xres)); - - ### Mode: DRAFT - - # Use always the lowest available resolution/quality, - # preferrably symmetric resolutions, - - # Do not use resolutions with less than 150 dpi in both - # demensions. - - # ImageType Text - - my $qualitysetting = - (defined($stpdata{$stpprn}{'STP_Quality'}) ? - (defined($stpdata{$stpprn}{'STP_Quality'}{'Draft'}) ? - 'Draft' : - (defined($stpdata{$stpprn}{'STP_Quality'}{'Economy'}) ? - 'Economy' : - (defined($stpdata{$stpprn}{'STP_Quality'}{'FastEconomy'}) ? - 'FastEconomy' : - (defined($stpdata{$stpprn}{'STP_Quality'}{'Standard'}) ? - 'Standard' : 'ERROR' )))) : ''); - die ("\n\n'STP_Quality' option without 'Draft', 'Economy', " . - "'FastEconomy', and 'Standard' choices for the '$stpprn' " . - "device class!\n") - if $qualitysetting eq 'ERROR'; - - my $imagesetting = - (defined($stpdata{$stpprn}{'STP_ImageType'}) ? - (defined($stpdata{$stpprn}{'STP_ImageType'}{'TextGraphics'}) ? - 'TextGraphics' : - (defined($stpdata{$stpprn}{'STP_ImageType'}{'TextGraphics'}) ? - 'TextGraphics' : - (defined($stpdata{$stpprn}{'STP_ImageType'}{'LineArt'}) ? - 'LineArt' : - (defined($stpdata{$stpprn}{'STP_ImageType'}{'Graphics'}) ? - 'Graphics' : 'ERROR' )))) : ''); - die ("\n\n'STP_ImageType' option without 'TextGraphics', " . - "'LineArt', and 'Graphics' choices for the '$stpprn' " . - "device class!\n") - if $imagesetting eq 'ERROR'; - - if (($respersquareinch < $draftminres) || - (($respersquareinch == $draftminres) && - ($symmetry < $draftbestsymmetry)) || - (($respersquareinch == $draftminres) && - ($symmetry == $draftbestsymmetry) && - (qualityorder($qualstr, $draftlowestqualstr) < 0))) { - unless (($xres < 150) && # Resolution not lower than - ($yres < 150)) { # 150x150, 360x120 allowed - $draftbestsymmetry = $symmetry; - $draftminres = $respersquareinch; - $draftlowestqualstr = $qualstr; - $modeinfo->{'Draft'} = { - 'stpres' => $quality, - 'quality' => $qualitysetting, - 'image' => $imagesetting, - 'xres' => $xres, - 'yres' => $yres - } - } - } - - ### Mode: NORMAL - - # Lowest resolution which is at least 300x300 dpi (600x600 dpi - # for Lexmark Z..), low quality level, unidirectional if - # possible, - - # ImageType TextGraphics - - $qualitysetting = - (defined($stpdata{$stpprn}{'STP_Quality'}) ? - (defined($stpdata{$stpprn}{'STP_Quality'}{'Standard'}) ? - 'Standard' : - (defined($stpdata{$stpprn}{'STP_Quality'}{'High'}) ? - 'High' : - (defined($stpdata{$stpprn}{'STP_Quality'}{'Draft'}) ? - 'Draft' : 'ERROR' ))) : ''); - die ("\n\n'STP_Quality' option without 'Draft', 'Standard', and " . - "'High' choices for the '$stpprn' device class!\n") - if $qualitysetting eq 'ERROR'; - - $imagesetting = - (defined($stpdata{$stpprn}{'STP_ImageType'}) ? - (defined($stpdata{$stpprn}{'STP_ImageType'}{'TextGraphics'}) ? - 'TextGraphics' : - (defined($stpdata{$stpprn}{'STP_ImageType'}{'Graphics'}) ? - 'Graphics' : - (defined($stpdata{$stpprn}{'STP_ImageType'}{'LineArt'}) ? - 'LineArt' : - (defined($stpdata{$stpprn}{'STP_ImageType'}{'Photo'}) ? - 'Photo' : 'ERROR' )))) : ''); - die ("\n\n'STP_ImageType' option without 'TextGraphics', 'Graphics', " . - "'LineArt', and 'Photo' choices for the '$stpprn' " . - "device class!\n") - if $imagesetting eq 'ERROR'; - - if (($respersquareinch < $normalminres) || - (($respersquareinch == $normalminres) && - ($symmetry < $normalbestsymmetry)) || - (($respersquareinch == $normalminres) && - ($symmetry == $normalbestsymmetry) && - (($qualstr =~ /uni/) > $normaluni)) || - (($respersquareinch == $normalminres) && - ($symmetry == $normalbestsymmetry) && - (($qualstr =~ /uni/) == $normaluni) && - (qualityorder($qualstr, $normallowestqualstr) < 0))) { - unless ((($xres < 300) || # Resolution not lower than - ($yres < 300)) || # 300x300, (600x600 on Lexmark) - (($stpprn =~ /^lexmark\-z/) && - (($xres < 600) || - ($yres < 600)))) { - $normalbestsymmetry = $symmetry; - $normalminres = $respersquareinch; - $normaluni = ($qualstr =~ /uni/); - $normallowestqualstr = $qualstr; - $modeinfo->{'Normal'} = { - 'stpres' => $quality, - 'quality' => $qualitysetting, - 'image' => $imagesetting, - 'xres' => $xres, - 'yres' => $yres - } - } - } - - ### Mode: HIGH - - # High: The highest resolution which is not higher than - # 720x720 dpi (Lexmark Z..: 1200x1200 dpi), - # unidirectional if possible, - # not "fol", "fourp", "hq", "hq2" - - # ImageType TextGraphics - - $qualitysetting = - (defined($stpdata{$stpprn}{'STP_Quality'}) ? - (defined($stpdata{$stpprn}{'STP_Quality'}{'High'}) ? - 'High' : - (defined($stpdata{$stpprn}{'STP_Quality'}{'Best'}) ? - 'Best' : - (defined($stpdata{$stpprn}{'STP_Quality'}{'Photo'}) ? - 'Photo' : - (defined($stpdata{$stpprn}{'STP_Quality'}{'Standard'}) ? - 'Standard' : 'ERROR' )))) : ''); - die ("\n\n'STP_Quality' option without 'High', 'Best', " . - "'Photo', and 'Standard' choices for the '$stpprn' " . - "device class!\n") - if $qualitysetting eq 'ERROR'; - - $imagesetting = - (defined($stpdata{$stpprn}{'STP_ImageType'}) ? - (defined($stpdata{$stpprn}{'STP_ImageType'}{'TextGraphics'}) ? - 'TextGraphics' : - (defined($stpdata{$stpprn}{'STP_ImageType'}{'Graphics'}) ? - 'Graphics' : - (defined($stpdata{$stpprn}{'STP_ImageType'}{'Photo'}) ? - 'Photo' : - (defined($stpdata{$stpprn}{'STP_ImageType'}{'LineArt'}) ? - 'LineArt' : 'ERROR' )))) : ''); - die ("\n\n'STP_ImageType' option without 'TextGraphics', 'Graphics', " . - "'LineArt', and 'Photo' choices for the '$stpprn' " . - "device class!\n") - if $imagesetting eq 'ERROR'; - - if (($respersquareinch > $highmaxres) || - (($respersquareinch == $highmaxres) && - ($symmetry < $highbestsymmetry)) || - (($respersquareinch == $highmaxres) && - ($symmetry == $highbestsymmetry) && - (qualityorder($qualstr, $highbestqualstr) > 0))) { - unless ((($stpprn !~ /^lexmark\-z/) && - (($xres > 720) || # Resolution not higher than - ($yres > 720))) || # 720x720 for non Lexmark - ($xres > 1200) || # not bigger than 1200x1200 - ($yres > 1200) || # in general - ($qualstr =~ /^(hq.*|fo.*)$/)) { # Not "hq", "hq2", - # "fol", "fourp" - $highbestsymmetry = $symmetry; - $highmaxres = $respersquareinch; - $highbestqualstr = $qualstr; - $modeinfo->{'High'} = { - 'stpres' => $quality, - 'quality' => $qualitysetting, - 'image' => $imagesetting, - 'xres' => $xres, - 'yres' => $yres - } - } - } - - ### Mode: VERY HIGH - - # Use always the highest available resolution/quality, - # preferrably symmetric resolutions, - - # On Epsons: Maximum 1440x720, not "hq2". - - # ImageType TextGraphics - - $qualitysetting = - (defined($stpdata{$stpprn}{'STP_Quality'}) ? - (defined($stpdata{$stpprn}{'STP_Quality'}{'Best'}) ? - 'Best' : - (defined($stpdata{$stpprn}{'STP_Quality'}{'High'}) ? - 'High' : - (defined($stpdata{$stpprn}{'STP_Quality'}{'Photo'}) ? - 'Photo' : - (defined($stpdata{$stpprn}{'STP_Quality'}{'Standard'}) ? - 'Standard' : 'ERROR' )))) : ''); - die ("\n\n'STP_Quality' option without 'High', 'Best', " . - "'Photo', and 'Standard' choices for the '$stpprn' " . - "device class!\n") - if $qualitysetting eq 'ERROR'; - - $imagesetting = - (defined($stpdata{$stpprn}{'STP_ImageType'}) ? - (defined($stpdata{$stpprn}{'STP_ImageType'}{'TextGraphics'}) ? - 'TextGraphics' : - (defined($stpdata{$stpprn}{'STP_ImageType'}{'Graphics'}) ? - 'Graphics' : - (defined($stpdata{$stpprn}{'STP_ImageType'}{'Photo'}) ? - 'Photo' : - (defined($stpdata{$stpprn}{'STP_ImageType'}{'LineArt'}) ? - 'LineArt' : 'ERROR' )))) : ''); - die ("\n\n'STP_ImageType' option without 'TextGraphics', 'Graphics', " . - "'LineArt', and 'Photo' choices for the '$stpprn' " . - "device class!\n") - if $imagesetting eq 'ERROR'; - - if (($respersquareinch > $veryhighmaxres) || - (($respersquareinch == $veryhighmaxres) && - ($symmetry < $veryhighbestsymmetry)) || - (($respersquareinch == $veryhighmaxres) && - ($symmetry == $veryhighbestsymmetry) && - (qualityorder($qualstr, $veryhighbestqualstr) > 0))) { - unless (($xres > 1440) || # Resolution not higher than - ($yres > 720) || # 1440x720 - ($qualstr eq "hq2")) { # Not "hq2" - $veryhighbestsymmetry = $symmetry; - $veryhighmaxres = $respersquareinch; - $veryhighbestqualstr = $qualstr; - $modeinfo->{'VeryHigh'} = { - 'stpres' => $quality, - 'quality' => $qualitysetting, - 'image' => $imagesetting, - 'xres' => $xres, - 'yres' => $yres - } - } - } - - ### Mode: PHOTO - - # High: The highest resolution which is not higher than - # 720x720 dpi (Lexmark Z..: 1200x1200 dpi), - # unidirectional if possible, - - # ImageType Photographs - - $qualitysetting = - (defined($stpdata{$stpprn}{'STP_Quality'}) ? - (defined($stpdata{$stpprn}{'STP_Quality'}{'HighPhoto'}) ? - 'HighPhoto' : - (defined($stpdata{$stpprn}{'STP_Quality'}{'Photo'}) ? - 'Photo' : - (defined($stpdata{$stpprn}{'STP_Quality'}{'UltraPhoto'}) ? - 'UltraPhoto' : - (defined($stpdata{$stpprn}{'STP_Quality'}{'Best'}) ? - 'Best' : - (defined($stpdata{$stpprn}{'STP_Quality'}{'High'}) ? - 'High' : - (defined($stpdata{$stpprn}{'STP_Quality'}{'Standard'}) ? - 'Standard' : 'ERROR' )))))) : ''); - die ("\n\n'STP_Quality' option without 'HighPhoto', 'Photo', " . - "'UltraPhoto', 'Best', 'High', and 'Standard' choices " . - "for the '$stpprn' device class!\n") - if $qualitysetting eq 'ERROR'; - - $imagesetting = - (defined($stpdata{$stpprn}{'STP_ImageType'}) ? - (defined($stpdata{$stpprn}{'STP_ImageType'}{'Photo'}) ? - 'Photo' : - (defined($stpdata{$stpprn}{'STP_ImageType'}{'Graphics'}) ? - 'Graphics' : - (defined($stpdata{$stpprn}{'STP_ImageType'}{'TextGraphics'}) ? - 'TextGraphics' : - (defined($stpdata{$stpprn}{'STP_ImageType'}{'LineArt'}) ? - 'LineArt' : 'ERROR' )))) : ''); - die ("\n\n'STP_ImageType' option without 'TextGraphics', 'Graphics', " . - "'LineArt', and 'Photo' choices for the '$stpprn' " . - "device class!\n") - if $imagesetting eq 'ERROR'; - - if (($respersquareinch > $photomaxres) || - (($respersquareinch == $photomaxres) && - ($symmetry < $photobestsymmetry)) || - (($respersquareinch == $photomaxres) && - ($symmetry == $photobestsymmetry) && - (qualityorder($qualstr, $photobestqualstr) > 0))) { - unless ((($stpprn !~ /^lexmark\-z/) && - (($xres > 720) || # Resolution not higher than - ($yres > 720))) || # 720x720 for non Lexmark - ($xres > 1200) || # not bigger than 1200x1200 - ($yres > 1200) || # in general - ($qualstr =~ /^(hq2)$/)) { # Not "hq2" - $photobestsymmetry = $symmetry; - $photomaxres = $respersquareinch; - $photobestqualstr = $qualstr; - $modeinfo->{'Photo'} = { - 'stpres' => $quality, - 'quality' => $qualitysetting, - 'image' => $imagesetting, - 'xres' => $xres, - 'yres' => $yres - } - } - } - } - - # We must have a "Normal" mode for every printer. - if (!defined($modeinfo->{'Normal'}{'stpres'})) { - die "No 'Normal' mode for $stpprn!\n"; - } - - # Build the strings with the settings for the "PrintoutMode" - # option - for my $m (sort keys(%{$modeinfo})) { - # If we didn't find anything for a certain mode, skip this - # mode - next if (!defined($modeinfo->{$m}{'stpres'})); - my $modestr = - (defined($stpdata{$stpprn}{'STP_ImageType'}) ? - "STP_ImageType=$modeinfo->{$m}{'image'} " : "") . - (defined($stpdata{$stpprn}{'STP_Quality'}) ? - "STP_Quality=$modeinfo->{$m}{'quality'} " : - "STP_Resolution=$modeinfo->{$m}{'stpres'} ") . - "Resolution=$modeinfo->{$m}{'xres'}x" . - "$modeinfo->{$m}{'yres'}dpi"; - if (defined($stpdata{$stpprn}{'Color'}{'Color'})) { - # Color printer - $modes->{$stpprn}{$m} = $modestr . " OutputType=Color"; - if (defined($stpdata{$stpprn}{'Color'}{'Grayscale'})) { - $modes->{$stpprn}{"$m.Gray"} = - $modestr . " OutputType=Grayscale"; - } elsif (defined($stpdata{$stpprn}{'Color'}{'BlackAndWhite'})) { - $modes->{$stpprn}{"$m.Gray"} = - $modestr . " OutputType=BlackAndWhite"; - } - # Some HP inkjets have a "600mono" quality mode which - # is only available in Grayscale, replace this mode by - # "300dpi" in the settings for color printing - if ($modes->{$stpprn}{$m} =~ /600mono/) { - if(!defined($stpdata{$stpprn}{'STP_Resolution'}{'300dpi'})){ - die "No '300dpi' mode for $stpprn!"; - } - $modes->{$stpprn}{$m} =~ s/600x600dpi/300x300dpi/; - $modes->{$stpprn}{$m} =~ s/600mono/300dpi/; - } - } else { - # bw printer - if ($stpprn =~ /^pcl\-[2-6][vls]?i?$/) { # Laser printer - # No 'Photo' mode on laser printers - next if ($m eq 'Photo'); - # Always "VeryFast" dithering on laser printers - $modestr =~ s/(Dither=)\S+/$1VeryFast/; - } - $modes->{$stpprn}{$m} = $modestr . " OutputType=Grayscale"; - } - } - # Remove 'VeryHigh' and 'High' if they are identical to lower - # quality modes - if ($modes->{$stpprn}{'VeryHigh'} eq - $modes->{$stpprn}{'High'}) { - delete($modes->{$stpprn}{'VeryHigh'}); - } - if ($modes->{$stpprn}{'High'} eq - $modes->{$stpprn}{'Normal'}) { - delete($modes->{$stpprn}{'High'}); - } - if (defined($stpdata{$stpprn}{'Color'}{'Color'})) { - # Color printer - if ($modes->{$stpprn}{'VeryHigh.Gray'} eq - $modes->{$stpprn}{'High.Gray'}) { - delete($modes->{$stpprn}{'VeryHigh.Gray'}); - } - if ($modes->{$stpprn}{'High.Gray'} eq - $modes->{$stpprn}{'Normal.Gray'}) { - delete($modes->{$stpprn}{'High.Gray'}); - } - } - } - - return ($modes, $choicelongnames) -} - -exit(0); diff --git a/src/foomatic/foomatic-templates-ijs/Color.xml b/src/foomatic/foomatic-templates-ijs/Color.xml deleted file mode 100644 index e34e729..0000000 --- a/src/foomatic/foomatic-templates-ijs/Color.xml +++ /dev/null @@ -1,20 +0,0 @@ -<option type="enum" id="opt/@@DRVNAME@@-color"> - <!-- A multilingual <comments> block can appear here, too; - it should be treated as documentation for the user. --> - <arg_longname> - <en>Output Type</en> - </arg_longname> - <arg_shortname> - <en>OutputType</en><!-- backends only know <en> shortnames! --> - </arg_shortname> - <arg_execution>@@GROUP@@ - <arg_order>130</arg_order> - <arg_spot>A</arg_spot> - <arg_substitution /> - <arg_proto> -sProcessColorModel=%s</arg_proto> - </arg_execution> - - @@OPTCONSTRAINTS@@ - @@ENUMVALS@@ - -</option> diff --git a/src/foomatic/foomatic-templates-ijs/Model.xml b/src/foomatic/foomatic-templates-ijs/Model.xml deleted file mode 100644 index 938d39f..0000000 --- a/src/foomatic/foomatic-templates-ijs/Model.xml +++ /dev/null @@ -1,21 +0,0 @@ -<option type="enum" id="opt/@@DRVNAME@@-model"> - <!-- A multilingual <comments> block can appear here, too; - it should be treated as documentation for the user. --> - <arg_longname> - <en>Printer Model</en> - </arg_longname> - <arg_shortname> - <en>Model</en><!-- backends only know <en> shortnames! --> - </arg_shortname> - <arg_execution>@@GROUP@@ - <arg_order>100</arg_order> - <arg_spot>A</arg_spot> - <arg_required /> - <arg_substitution /> - <arg_proto> %s</arg_proto> - </arg_execution> - - @@OPTCONSTRAINTS@@ - @@ENUMVALS@@ - -</option> diff --git a/src/foomatic/foomatic-templates-ijs/NumericalOptions.xml b/src/foomatic/foomatic-templates-ijs/NumericalOptions.xml deleted file mode 100644 index 5f55c40..0000000 --- a/src/foomatic/foomatic-templates-ijs/NumericalOptions.xml +++ /dev/null @@ -1,21 +0,0 @@ -<option type="@@TYPE@@" id="opt/@@DRVNAME@@-@@LOWERCASESHORTNAME@@"> - <!-- A multilingual <comments> block can appear here, too; - it should be treated as documentation for the user. --> - <arg_longname> - <en>@@LONGNAME@@</en> - </arg_longname> - <arg_shortname> - <en>@@SHORTNAME@@</en><!-- backends only know <en> shortnames! --> - </arg_shortname> - <arg_execution>@@GROUP@@ - <arg_order>@@ORDER@@</arg_order> - <arg_spot>@@SPOT@@</arg_spot> - <arg_substitution /> - <arg_proto>@@PROTO@@</arg_proto> - </arg_execution> - - @@OPTCONSTRAINTS@@ - - <arg_max>@@MAXVAL@@</arg_max> - <arg_min>@@MINVAL@@</arg_min> -</option> diff --git a/src/foomatic/foomatic-templates-ijs/OtherOptions.xml b/src/foomatic/foomatic-templates-ijs/OtherOptions.xml deleted file mode 100644 index e0ecee4..0000000 --- a/src/foomatic/foomatic-templates-ijs/OtherOptions.xml +++ /dev/null @@ -1,20 +0,0 @@ -<option type="enum" id="opt/@@DRVNAME@@-@@LOWERCASESHORTNAME@@"> - <!-- A multilingual <comments> block can appear here, too; - it should be treated as documentation for the user. --> - <arg_longname> - <en>@@LONGNAME@@</en> - </arg_longname> - <arg_shortname> - <en>@@SHORTNAME@@</en><!-- backends only know <en> shortnames! --> - </arg_shortname> - <arg_execution>@@GROUP@@ - <arg_order>@@ORDER@@</arg_order> - <arg_spot>@@SPOT@@</arg_spot> - <arg_substitution /> - <arg_proto>@@PROTO@@</arg_proto> - </arg_execution> - - @@OPTCONSTRAINTS@@ - @@ENUMVALS@@ - -</option> diff --git a/src/foomatic/foomatic-templates-ijs/PageSize.xml b/src/foomatic/foomatic-templates-ijs/PageSize.xml deleted file mode 100644 index 654aab2..0000000 --- a/src/foomatic/foomatic-templates-ijs/PageSize.xml +++ /dev/null @@ -1,20 +0,0 @@ -<option type="enum" id="opt/@@DRVNAME@@-pagesize"> - <!-- A multilingual <comments> block can appear here, too; - it should be treated as documentation for the user. --> - <arg_longname> - <en>Page Size</en> - </arg_longname> - <arg_shortname> - <en>PageSize</en><!-- backends only know <en> shortnames! --> - </arg_shortname> - <arg_execution>@@GROUP@@ - <arg_order>110</arg_order> - <arg_spot>A</arg_spot> - <arg_substitution /> - <arg_proto> %s</arg_proto> - </arg_execution> - - @@OPTCONSTRAINTS@@ - @@ENUMVALS@@ - -</option> diff --git a/src/foomatic/foomatic-templates-ijs/PrintoutMode.xml b/src/foomatic/foomatic-templates-ijs/PrintoutMode.xml deleted file mode 100644 index eb1b0bb..0000000 --- a/src/foomatic/foomatic-templates-ijs/PrintoutMode.xml +++ /dev/null @@ -1,19 +0,0 @@ -<option type="enum" id="opt/@@DRVNAME@@-printoutmode"> - <!-- A multilingual <comments> block can appear here, too; - it should be treated as documentation for the user. --> - <arg_longname> - <en>Printout Mode</en> - </arg_longname> - <arg_shortname> - <en>PrintoutMode</en><!-- backends only know <en> shortnames! --> - </arg_shortname> - <arg_execution>@@GROUP@@ - <arg_order>10</arg_order> - <arg_spot>A</arg_spot> - <arg_composite /> - </arg_execution> - - @@OPTCONSTRAINTS@@ - @@ENUMVALS@@ - -</option> diff --git a/src/foomatic/foomatic-templates-ijs/RenderResolution.xml b/src/foomatic/foomatic-templates-ijs/RenderResolution.xml deleted file mode 100644 index ab29dbf..0000000 --- a/src/foomatic/foomatic-templates-ijs/RenderResolution.xml +++ /dev/null @@ -1,20 +0,0 @@ -<option type="enum" id="opt/@@DRVNAME@@-resolution"> - <!-- A multilingual <comments> block can appear here, too; - it should be treated as documentation for the user. --> - <arg_longname> - <en>Rendering Resolution</en> - </arg_longname> - <arg_shortname> - <en>Resolution</en><!-- backends only know <en> shortnames! --> - </arg_shortname> - <arg_execution>@@GROUP@@ - <arg_order>120</arg_order> - <arg_spot>A</arg_spot> - <arg_substitution /> - <arg_proto> -r%s</arg_proto> - </arg_execution> - - @@OPTCONSTRAINTS@@ - @@ENUMVALS@@ - -</option> diff --git a/src/foomatic/foomatic-templates-ijs/Resolution.xml b/src/foomatic/foomatic-templates-ijs/Resolution.xml deleted file mode 100644 index 0006a40..0000000 --- a/src/foomatic/foomatic-templates-ijs/Resolution.xml +++ /dev/null @@ -1,20 +0,0 @@ -<option type="enum" id="opt/@@DRVNAME@@-printerresolution"> - <!-- A multilingual <comments> block can appear here, too; - it should be treated as documentation for the user. --> - <arg_longname> - <en>Printer Resolution</en> - </arg_longname> - <arg_shortname> - <en>PrinterResolution</en><!-- backends only know <en> shortnames! --> - </arg_shortname> - <arg_execution>@@GROUP@@ - <arg_order>800</arg_order> - <arg_spot>B</arg_spot> - <arg_substitution /> - <arg_proto>Resolution=%s,</arg_proto> - </arg_execution> - - @@OPTCONSTRAINTS@@ - @@ENUMVALS@@ - -</option> diff --git a/src/foomatic/foomatic-templates-ijs/STP_InputSlot.xml b/src/foomatic/foomatic-templates-ijs/STP_InputSlot.xml deleted file mode 100644 index 15f8e06..0000000 --- a/src/foomatic/foomatic-templates-ijs/STP_InputSlot.xml +++ /dev/null @@ -1,20 +0,0 @@ -<option type="enum" id="opt/@@DRVNAME@@-stp_inputslot"> - <!-- A multilingual <comments> block can appear here, too; - it should be treated as documentation for the user. --> - <arg_longname> - <en>Media Source</en> - </arg_longname> - <arg_shortname> - <en>InputSlot</en><!-- backends only know <en> shortnames! --> - </arg_shortname> - <arg_execution>@@GROUP@@ - <arg_order>1000</arg_order> - <arg_spot>B</arg_spot> - <arg_substitution /> - <arg_proto>STP_InputSlot=%s,</arg_proto> - </arg_execution> - - @@OPTCONSTRAINTS@@ - @@ENUMVALS@@ - -</option> diff --git a/src/foomatic/foomatic-templates-ijs/STP_MediaType.xml b/src/foomatic/foomatic-templates-ijs/STP_MediaType.xml deleted file mode 100644 index 8f321c4..0000000 --- a/src/foomatic/foomatic-templates-ijs/STP_MediaType.xml +++ /dev/null @@ -1,20 +0,0 @@ -<option type="enum" id="opt/@@DRVNAME@@-stp_mediatype"> - <!-- A multilingual <comments> block can appear here, too; - it should be treated as documentation for the user. --> - <arg_longname> - <en>Media Type</en> - </arg_longname> - <arg_shortname> - <en>MediaType</en><!-- backends only know <en> shortnames! --> - </arg_shortname> - <arg_execution>@@GROUP@@ - <arg_order>1000</arg_order> - <arg_spot>B</arg_spot> - <arg_substitution /> - <arg_proto>STP_MediaType=%s,</arg_proto> - </arg_execution> - - @@OPTCONSTRAINTS@@ - @@ENUMVALS@@ - -</option> diff --git a/src/foomatic/foomatic-templates-ijs/gutenprint.xml b/src/foomatic/foomatic-templates-ijs/gutenprint.xml deleted file mode 100644 index 040ccf6..0000000 --- a/src/foomatic/foomatic-templates-ijs/gutenprint.xml +++ /dev/null @@ -1,45 +0,0 @@ -<driver id="driver/@@DRVNAME@@"> - <name>@@DRVNAME@@</name> - <url>http://gimp-print.sourceforge.net/</url> - <execution> - <filter /> - <prototype>gs -q -dPARANOIDSAFER -dNOPAUSE -dBATCH -dNOINTERPOLATE -sDEVICE=ijs -sIjsServer=ijsgutenprint.@@STPREL@@ -dIjsUseOutputFD%A -sIjsParams="@@REMAP@@STP_VERSION=@@STPVER@@,%B"%Z -sOutputFile=- -</prototype> - </execution> - <comments> - <en> - - <b>This page provides data for the IJS driver of Gutenprint - 5.0. If you are using a Gimp-Print 4.2 release (e. g. 4.2.7), - driver of the Gimp-Print 4.2.x series, please visit the - "<a - href="show_driver.cgi?driver=gimp-print-ijs">gimp-print-ijs</a>" - page, and if you are using Gimp-Print 4.0.x, go to the "<a - href="show_driver.cgi?driver=stp">stp</a>" - page.</b><p> - - Gutenprint supports a wide variety of Epson Stylus, HP DeskJet, - LaserJet, Canon BubbleJet, Lexmark inkjet printers, with the - primary goal being uncompromising quality. Epson Stylus printers - in particular are supported in all resolutions and modes, and many - models are capable of producing prints that rival photographic - prints in quality. This package also offers much faster printing - for high quality text and presentation graphics when - required.<p> - - The execution information currently here corresponds to driver - version @@STPVER@@. If you use another version, use the Foomatic - data which comes with the Gutenprint package.<p> - - Note that the Foomatic datafiles provided here are only for the - IJS driver of Gutenprint. For the native CUPS driver there - are special PPD files provided by the Gutenprint package.<p> - - This driver is built as an IJS driver, which does not require - recompiling Ghostscript. It requires an IJS enabled GhostScript - (GNU GhostScript 6.53 or newer, APFL GhostScript 7.04 or - newer).<p> - - </en> - </comments> - @@STPRINTERS@@ -</driver> diff --git a/src/foomatic/gutenprint-version.c b/src/foomatic/gutenprint-version.c deleted file mode 100644 index d9910b2..0000000 --- a/src/foomatic/gutenprint-version.c +++ /dev/null @@ -1,42 +0,0 @@ -/* - * "$Id: gutenprint-version.c,v 1.3 2007/03/05 00:04:00 tillkamppeter Exp $" - * - * Dump the per-printer options for the OpenPrinting database - * - * Copyright 2000 Robert Krawitz (rlk@alum.mit.edu) - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the Free - * Software Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY - * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - */ - -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif -#include <stdio.h> -#include <gutenprint/gutenprint.h> - -int -main(int argc, char **argv) -{ -#ifdef VERSION - if (argc > 1) - printf("%s\n", GUTENPRINT_RELEASE_VERSION); - else - printf("%s\n", VERSION); - return 0; -#else - fprintf(stderr, "VERSION not defined!\n"); - return 1; -#endif -} diff --git a/src/foomatic/mk_printerlist.in b/src/foomatic/mk_printerlist.in deleted file mode 100644 index da669ad..0000000 --- a/src/foomatic/mk_printerlist.in +++ /dev/null @@ -1,30 +0,0 @@ -#!@PERL@ - -%printer_list = (); -@printer_names = (); - -eval `./printers`; - -open PRINTERS, "(wget -q -O - http://www.openprinting.org/printer_list.cgi; cat foomatic-printermap) |" or die "Can't get print list: $!"; - -while (<PRINTERS>) { - if (/make ==/) { - /.*== "(.*)".*/; - $current_make = $1; - } elsif (/=new Option/) { - /.*"(.*)", *"(.*)".*/; - my $printer = "$current_make " . $1; - $printer_list{$2} = $printer; - } elsif (/^\#gptofoo/) { - chomp; - my ($junk, $key, $id) = split; - $id =~ s,printer/,,; - my ($string) = sprintf("%-30s %-15s %s\n", $printer_list{$id}, $key, - $printer_name{$key}); - push @printer_names, $string; - } -} - -close PRINTERS; - -print sort @printer_names; diff --git a/src/foomatic/paper_sizes.c b/src/foomatic/paper_sizes.c deleted file mode 100644 index 7e8cf2e..0000000 --- a/src/foomatic/paper_sizes.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * "$Id: paper_sizes.c,v 1.10 2015/09/07 21:57:37 speachy Exp $" - * - * Dump the per-printer options for the OpenPrinting database - * - * Copyright 2000 Robert Krawitz (rlk@alum.mit.edu) - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the Free - * Software Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY - * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - */ - -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif -#include <stdio.h> -#include <gutenprint/gutenprint.h> - -int -main(int argc, char **argv) -{ - int i; - - stp_init(); - for (i = 0; i < stp_known_papersizes(); i++) - { - const stp_papersize_t *p = stp_get_papersize_by_index(i); - if (p->paper_size_type == PAPERSIZE_TYPE_ENVELOPE || - p->paper_size_type == PAPERSIZE_TYPE_STANDARD) - { - printf("%s %d %d\n", p->name, p->width, p->height); - } - } - return 0; -} diff --git a/src/foomatic/printer_margins.c b/src/foomatic/printer_margins.c deleted file mode 100644 index 69bf0dd..0000000 --- a/src/foomatic/printer_margins.c +++ /dev/null @@ -1,126 +0,0 @@ -/* - * "$Id: printer_margins.c,v 1.22 2015/08/02 03:09:40 rlk Exp $" - * - * Dump the per-printer margins for the OpenPrinting database - * - * Copyright 2000, 2003 Robert Krawitz (rlk@alum.mit.edu) and - * Till Kamppeter (till.kamppeter@gmail.com) - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the Free - * Software Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY - * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - */ - -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif -#include <stdio.h> -#include <string.h> -#include <gutenprint/gutenprint.h> - -int -main(int argc, char **argv) { - int i, k; - int use_all_page_sizes = 1; - if (argc > 1 && !strcmp(argv[1], "-s")) - use_all_page_sizes = 0; - - stp_init(); - for (i = 0; i < stp_printer_model_count(); i++) { - const stp_printer_t *p = stp_get_printer_by_index(i); - const char *driver = stp_printer_get_driver(p); - const char *family = stp_printer_get_family(p); - stp_vars_t *pv = - stp_vars_create_copy(stp_printer_get_defaults(p)); - stp_parameter_t desc; - int num_opts; - int printer_is_color = 0; - const stp_param_string_t *opt; - int width, height, bottom, left, top, right; - if (strcmp(family, "ps") == 0 || strcmp(family, "raw") == 0) - continue; - stp_describe_parameter(pv, "PrintingMode", &desc); - if (stp_string_list_is_present(desc.bounds.str, "Color")) - printer_is_color = 1; - stp_parameter_description_destroy(&desc); - if (printer_is_color) - stp_set_string_parameter(pv, "PrintingMode", "Color"); - else - stp_set_string_parameter(pv, "PrintingMode", "BW"); - stp_set_string_parameter(pv, "ChannelBitDepth", "8"); - printf("# Printer model %s, long name `%s'\n", driver, - stp_printer_get_long_name(p)); - stp_describe_parameter(pv, "PageSize", &desc); - printf("$defaults{'%s'}{'PageSize'} = '%s';\n", - driver, desc.deflt.str); - num_opts = stp_string_list_count(desc.bounds.str); - - for (k = 0; k < num_opts; k++) { - const stp_papersize_t *papersize; - opt = stp_string_list_param(desc.bounds.str, k); - papersize = stp_get_papersize_by_name(opt->name); - - if (!papersize) { - printf("Unable to lookup size %s!\n", opt->name); - continue; - } - if (!use_all_page_sizes && num_opts >= 10 && - (papersize->paper_unit == PAPERSIZE_ENGLISH_EXTENDED || - papersize->paper_unit == PAPERSIZE_METRIC_EXTENDED)) - continue; - - width = papersize->width; - height = papersize->height; - - stp_set_string_parameter(pv, "PageSize", opt->name); - - stp_get_media_size(pv, &width, &height); - stp_get_maximum_imageable_area(pv, &left, &right, &bottom, &top); - - if (left < 0) - left = 0; - if (right > width) - right = width; - if (bottom > height) - bottom = height; - if (top < 0) - top = 0; - - bottom = height - bottom; - top = height - top; - - if (strcmp(opt->name, "Custom") == 0) { - /* Use relative values for the custom size */ - right = width - right; - top = height - top; - width = 0; - height = 0; - } - - printf("$stpdata{'%s'}{'PageSize'}{'%s'} = '%s';", - driver, opt->name, opt->text); - printf("$imageableareas{'%s'}{'%s'} = {", - driver, opt->name); - printf("'left'=>'%d',", left); - printf("'right'=>'%d',", right); - printf("'top'=>'%d',", top); - printf("'bottom'=>'%d',", bottom); - printf("'width'=>'%d',", width); - printf("'height'=>'%d'", height); - printf("};\n"); - } - stp_parameter_description_destroy(&desc); - stp_vars_destroy(pv); - } - return 0; -} diff --git a/src/foomatic/printer_options.c b/src/foomatic/printer_options.c deleted file mode 100644 index 9bf8e64..0000000 --- a/src/foomatic/printer_options.c +++ /dev/null @@ -1,317 +0,0 @@ -/* - * "$Id: printer_options.c,v 1.55 2015/09/08 03:59:55 speachy Exp $" - * - * Dump the per-printer options for the OpenPrinting database - * - * Copyright 2000 Robert Krawitz (rlk@alum.mit.edu) - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the Free - * Software Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY - * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - */ - -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif -#include <stdio.h> -#include <string.h> -#include <gutenprint/gutenprint.h> -#include <gutenprint/gutenprint-intl.h> - -int -main(int argc, char **argv) -{ - int i, j, k; - stp_parameter_level_t max_level = STP_PARAMETER_LEVEL_ADVANCED4; - stp_string_list_t *params_seen; - if (argc > 1 && !strcmp(argv[1], "-s")) - max_level = STP_PARAMETER_LEVEL_BASIC; - - stp_init(); - params_seen = stp_string_list_create(); - for (i = 0; i < stp_printer_model_count(); i++) - { - stp_parameter_list_t params; - int nparams; - stp_parameter_t desc; - const stp_printer_t *printer = stp_get_printer_by_index(i); - const char *driver = stp_printer_get_driver(printer); - const char *family = stp_printer_get_family(printer); - stp_vars_t *pv; - int tcount = 0; - size_t count; - int printer_is_color = 0; - - if (strcmp(family, "ps") == 0 || strcmp(family, "raw") == 0) - continue; - - pv = stp_vars_create_copy(stp_printer_get_defaults(printer)); - - /* Set Job Mode to "Job" as this enables the Duplex option */ - stp_set_string_parameter(pv, "JobMode", "Job"); - - stp_describe_parameter(pv, "PrintingMode", &desc); - if (stp_string_list_is_present(desc.bounds.str, "Color")) - printer_is_color = 1; - stp_parameter_description_destroy(&desc); - if (printer_is_color) - stp_set_string_parameter(pv, "PrintingMode", "Color"); - else - stp_set_string_parameter(pv, "PrintingMode", "BW"); - stp_set_string_parameter(pv, "ChannelBitDepth", "8"); - - printf("# Printer model %s, long name `%s'\n", driver, - stp_printer_get_long_name(printer)); - - params = stp_get_parameter_list(pv); - nparams = stp_parameter_list_count(params); - - for (k = 0; k < nparams; k++) - { - const stp_parameter_t *p = stp_parameter_list_param(params, k); - if (p->read_only || - (p->p_level > max_level && strcmp(p->name, "Resolution") != 0) || - (p->p_class != STP_PARAMETER_CLASS_OUTPUT && - p->p_class != STP_PARAMETER_CLASS_FEATURE)) - continue; - count = 0; - stp_describe_parameter(pv, p->name, &desc); - if (desc.is_active) - { - char buf[1024]; - sprintf(buf, "STP_%s", desc.name); - if (!stp_string_list_find(params_seen, buf)) - { - stp_string_list_add_string(params_seen, buf, buf); - if ((desc.p_type == STP_PARAMETER_TYPE_DOUBLE || - desc.p_type == STP_PARAMETER_TYPE_DIMENSION || - desc.p_type == STP_PARAMETER_TYPE_INT) && - !desc.is_mandatory) - { - sprintf(buf, "STP_Enable%s", desc.name); - if (!stp_string_list_find(params_seen, buf)) - { - stp_string_list_add_string(params_seen, buf, buf); - /* - * Create a dummy option that enables or disables - * the option as appropriate. The long name ends in - * enable, rather than starts with enable, because - * CUPS has this nasty habit of sorting options - * alphabetically rather than leaving them in the - * order listed. This ensures that the enable - * option is adjacent to the value it controls. - */ - printf("$longnames{'STP_Enable%s'}='%s Enable';", - desc.name, desc.text); - printf("$param_classes{'STP_Enable%s'}=%d;", - desc.name, desc.p_class); - printf("$param_levels{'STP_Enable%s'}=%d;", - desc.name, desc.p_level); - printf("$longnames{'STP_%s'}='%s Value';", - desc.name, desc.text); - } - } - else - printf("$longnames{'STP_%s'}='%s';", - desc.name, desc.text); - printf("$param_classes{'STP_%s'}=%d;", - desc.name, desc.p_class); - printf("$param_levels{'STP_%s'}=%d;", - desc.name, desc.p_level); - } - if ((desc.p_type == STP_PARAMETER_TYPE_DOUBLE || - desc.p_type == STP_PARAMETER_TYPE_DIMENSION || - desc.p_type == STP_PARAMETER_TYPE_INT) && - !desc.is_mandatory) - { - printf("$defaults{'%s'}{'STP_Enable%s'}='Disabled';", - driver, desc.name); - printf("$stpdata{'%s'}{'STP_Enable%s'}{'Disabled'}='Disabled';", - driver, desc.name); - printf("$stpdata{'%s'}{'STP_Enable%s'}{'Enabled'}='Enabled';", - driver, desc.name); - } - if (desc.p_type == STP_PARAMETER_TYPE_STRING_LIST) - { - count = stp_string_list_count(desc.bounds.str); - if (count > 0) - { - printf("{ $stpdata{'%s'}{'STP_%s'}={};", - driver, desc.name); - printf("my $tmp=$stpdata{'%s'}{'STP_%s'};", - driver, desc.name); - if (strcmp(desc.name, "Resolution") == 0) - { - printf("$stpdata{'%s'}{'x_resolution'}={};", - driver); - printf("my $x_t=$stpdata{'%s'}{'x_resolution'};", - driver); - printf("$stpdata{'%s'}{'y_resolution'}={};", - driver); - printf("my $y_t=$stpdata{'%s'}{'y_resolution'};", - driver); - } - if (desc.is_mandatory) - { - printf("$defaults{'%s'}{'STP_%s'}='%s';", - driver, desc.name, desc.deflt.str); - } - else - { - printf("$defaults{'%s'}{'STP_%s'}='%s';", - driver, desc.name, "None"); - printf("$$tmp{'%s'}='%s';", "None", "None"); - } - for (j = 0; j < count; j++) - { - const stp_param_string_t *param = - stp_string_list_param(desc.bounds.str, j); - printf("$$tmp{'%s'}='%s';", - param->name, param->text); - if (strcmp(desc.name, "Resolution") == 0) - { - int x, y; - stp_set_string_parameter(pv, "Resolution", - param->name); - stp_describe_resolution(pv, &x, &y); - if (x > 0 && y > 0) - { - printf("$$x_t{'%s'}='%d';",param->name, x); - printf("$$y_t{'%s'}='%d';",param->name, y); - } - stp_clear_string_parameter(pv, "Resolution"); - } - } - printf("}\n"); - } - } - else if (desc.p_type == STP_PARAMETER_TYPE_BOOLEAN) - { - if (desc.is_mandatory) - { - printf("$defaults{'%s'}{'STP_%s'}='%d';", - driver, desc.name, desc.deflt.boolean); - } - else - { - printf("$defaults{'%s'}{'STP_%s'}='%s';", - driver, desc.name, "None"); - printf("$stpdata{'%s'}{'STP_%s'}{'%s'}='%s';", - driver, desc.name, "None", "None"); - } - - printf("$stpdata{'%s'}{'STP_%s'}{'False'}='False';", - driver, desc.name); - printf("$stpdata{'%s'}{'STP_%s'}{'True'}='True';\n", - driver, desc.name); - } - else if (desc.p_type == STP_PARAMETER_TYPE_DOUBLE) - { - if (desc.bounds.dbl.lower <= desc.deflt.dbl && - desc.bounds.dbl.upper >= desc.deflt.dbl) - { - printf("{ $stp_float_values{'%s'}{'STP_%s'}={};", - driver, desc.name); - printf("my $tmp=$stp_float_values{'%s'}{'STP_%s'};", - driver, desc.name); - printf("$$tmp{'MINVAL'}=%.3f;", - desc.bounds.dbl.lower); - printf("$$tmp{'MAXVAL'}=%.3f;", - desc.bounds.dbl.upper); - printf("$$tmp{'DEFVAL'}=%.3f;", - desc.deflt.dbl); - /* printf("$$tmp{'LONG_NAME'}='%s';", - gettext(desc.text)); */ - printf("$$tmp{'CATEGORY'}='%s';", - gettext(desc.category)); - printf("$$tmp{'MANDATORY'}=q(%d);", - desc.is_mandatory); - printf("}\n"); - } - } - else if (desc.p_type == STP_PARAMETER_TYPE_INT) - { - if (desc.bounds.integer.lower <= desc.deflt.integer && - desc.bounds.integer.upper >= desc.deflt.integer) - { - printf("{ $stp_int_values{'%s'}{'STP_%s'}={};", - driver, desc.name); - printf("my $tmp=$stp_int_values{'%s'}{'STP_%s'};", - driver, desc.name); - printf("$$tmp{'MINVAL'}=%d;", - desc.bounds.integer.lower); - printf("$$tmp{'MAXVAL'}=%d;", - desc.bounds.integer.upper); - printf("$$tmp{'DEFVAL'}=%d;", - desc.deflt.integer); - /* printf("$$tmp{'LONG_NAME'}='%s';", - gettext(desc.text)); */ - printf("$$tmp{'CATEGORY'}='%s';", - gettext(desc.category)); - printf("$$tmp{'MANDATORY'}=q(%d);", - desc.is_mandatory); - printf("}\n"); - } - } - else if (desc.p_type == STP_PARAMETER_TYPE_DIMENSION) - { - if (desc.bounds.dimension.lower <= desc.deflt.dimension && - desc.bounds.dimension.upper >= desc.deflt.dimension) - { - printf("{ $stp_dimension_values{'%s'}{'STP_%s'}={};", - driver, desc.name); - printf("my $tmp=$stp_dimension_values{'%s'}{'STP_%s'};", - driver, desc.name); - printf("$$tmp{'MINVAL'}=%d;", - desc.bounds.dimension.lower); - printf("$$tmp{'MAXVAL'}=%d;", - desc.bounds.dimension.upper); - printf("$$tmp{'DEFVAL'}=%d;", - desc.deflt.dimension); - /* printf("$$tmp{'LONG_NAME'}='%s';", - gettext(desc.text)); */ - printf("$$tmp{'CATEGORY'}='%s';", - gettext(desc.category)); - printf("$$tmp{'MANDATORY'}=q(%d);", - desc.is_mandatory); - printf("}\n"); - } - } - tcount += count; - } - stp_parameter_description_destroy(&desc); - } - stp_parameter_list_destroy(params); - if (tcount > 0) - { - if (printer_is_color) - { - printf("$defaults{'%s'}{'%s'}='%s';", - driver, "Color", "Color"); - printf("$stpdata{'%s'}{'%s'}{'%s'}='%s';", - driver, "Color", "Color", "Color"); - printf("$stpdata{'%s'}{'%s'}{'%s'}='%s';\n", - driver, "Color", "RawCMYK", "Raw CMYK"); - } - else - printf("$defaults{'%s'}{'%s'}='%s';", - driver, "Color", "Grayscale"); - printf("$stpdata{'%s'}{'%s'}{'%s'}='%s';", - driver, "Color", "Grayscale", "Gray Scale"); - printf("$stpdata{'%s'}{'%s'}{'%s'}='%s';\n", - driver, "Color", "BlackAndWhite", "Black and White"); - } - stp_vars_destroy(pv); - } - return 0; -} diff --git a/src/foomatic/printers.c b/src/foomatic/printers.c deleted file mode 100644 index 8ad7c8e..0000000 --- a/src/foomatic/printers.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * "$Id: printers.c,v 1.14 2010/08/07 02:30:38 rlk Exp $" - * - * Dump the per-printer options for the OpenPrinting database - * - * Copyright 2000 Robert Krawitz (rlk@alum.mit.edu) - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the Free - * Software Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY - * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - */ - -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif -#include <stdio.h> -#include <string.h> -#include <gutenprint/gutenprint.h> - -int -main(int argc, char **argv) -{ - int i; - int status = 0; - - stp_init(); - for (i = 0; i < stp_printer_model_count(); i++) - { - const stp_printer_t *p = stp_get_printer_by_index(i); - const char *driver = stp_printer_get_driver(p); - const char *long_name = stp_printer_get_long_name(p); - const char *manufacturer = stp_printer_get_manufacturer(p); - const char *family = stp_printer_get_family(p); - const char *foomatic_id = stp_printer_get_foomatic_id(p); - - if (foomatic_id) - { - printf("if (defined($foomap{'%s'})) { print STDERR \"\\n*** Duplicate printer %s\"; $errors++; } ", - driver, driver); - printf("if (defined($mapfoo{'%s'})) { print STDERR \"\\n*** Duplicate foomatic ID %s\"; $errors++; } ", - foomatic_id, foomatic_id); - printf("$printer_name{'%s'} = '%s';", driver, long_name); - printf("$printer_make{'%s'} = '%s';", driver, manufacturer); - printf("$printer_family{'%s'} = '%s';", driver, family); - printf("$foomap{'%s'} = '%s';", driver, foomatic_id); - printf("$mapfoo{'%s'} = '%s';", foomatic_id, driver); - printf("push (@{$mapstp{'%s'}}, 'printer/%s');", driver, foomatic_id); - printf("push @printer_list, '%s';\n", driver); - } - else if (strcmp(family, "raw") != 0 && strcmp(family, "ps") != 0) - { - fprintf(stderr, "No foomatic ID for printer %s!\n", driver); - status = 1; - } - - } - return status; -} diff --git a/src/ghost/Makefile.am b/src/ghost/Makefile.am deleted file mode 100644 index b4c0ef5..0000000 --- a/src/ghost/Makefile.am +++ /dev/null @@ -1,41 +0,0 @@ -## $Id: Makefile.am,v 1.38 2005/11/21 11:16:23 rleigh Exp $ -## Copyright (C) 2000 Roger Leigh -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2, or (at your option) -## any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - -## Process this file with automake to produce Makefile.in. - -@SET_MAKE@ - -include $(top_srcdir)/scripts/global.mk - - -## Clean - -MAINTAINERCLEANFILES = Makefile.in - -## Variables - -LOCAL_CPPFLAGS = $(GUTENPRINT_CFLAGS) @IJS_CFLAGS@ - - -## Programs - -if BUILD_GHOSTSCRIPT -bin_PROGRAMS = ijsgutenprint.@GUTENPRINT_MAJOR_VERSION@.@GUTENPRINT_MINOR_VERSION@ -ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_SOURCES = ijsgutenprint.c -ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_LDADD = $(GUTENPRINT_LIBS) $(IJS_LIBS) -ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_LDFLAGS = $(STATIC_LDOPTS) -endif diff --git a/src/ghost/Makefile.in b/src/ghost/Makefile.in deleted file mode 100644 index c72a029..0000000 --- a/src/ghost/Makefile.in +++ /dev/null @@ -1,700 +0,0 @@ -# Makefile.in generated by automake 1.13.4 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2013 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -# Variables - -#export STP_MODULE_PATH = $(top_builddir)/src/main/.libs:$(top_builddir)/src/main -#export STP_DATA_PATH = $(top_srcdir)/src/xml - -VPATH = @srcdir@ -am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\[\ \ ]*) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -[dEDm]) skip_next=yes;; \ - -[JT]) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -DIST_COMMON = $(top_srcdir)/scripts/global.mk $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/scripts/mkinstalldirs \ - $(top_srcdir)/scripts/depcomp -@BUILD_GHOSTSCRIPT_TRUE@bin_PROGRAMS = ijsgutenprint.@GUTENPRINT_MAJOR_VERSION@.@GUTENPRINT_MINOR_VERSION@$(EXEEXT) -subdir = src/ghost -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/isc-posix.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stp.m4 \ - $(top_srcdir)/m4/stp_cups.m4 $(top_srcdir)/m4/stp_gimp.m4 \ - $(top_srcdir)/m4/stp_option.m4 $(top_srcdir)/m4/stp_release.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/scripts/mkinstalldirs -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -am__installdirs = "$(DESTDIR)$(bindir)" -PROGRAMS = $(bin_PROGRAMS) -am__ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_SOURCES_DIST = \ - ijsgutenprint.c -@BUILD_GHOSTSCRIPT_TRUE@am_ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_OBJECTS = \ -@BUILD_GHOSTSCRIPT_TRUE@ ijsgutenprint.$(OBJEXT) -ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_OBJECTS = $(am_ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_OBJECTS) -am__DEPENDENCIES_1 = -@BUILD_GHOSTSCRIPT_TRUE@ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_DEPENDENCIES = \ -@BUILD_GHOSTSCRIPT_TRUE@ $(GUTENPRINT_LIBS) \ -@BUILD_GHOSTSCRIPT_TRUE@ $(am__DEPENDENCIES_1) -AM_V_lt = $(am__v_lt_@AM_V@) -am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) -am__v_lt_0 = --silent -am__v_lt_1 = -ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_LINK = \ - $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_LDFLAGS) \ - $(LDFLAGS) -o $@ -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -depcomp = $(SHELL) $(top_srcdir)/scripts/depcomp -am__depfiles_maybe = depfiles -am__mv = mv -f -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) -AM_V_CC = $(am__v_CC_@AM_V@) -am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) -am__v_CC_0 = @echo " CC " $@; -am__v_CC_1 = -CCLD = $(CC) -LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CCLD = $(am__v_CCLD_@AM_V@) -am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) -am__v_CCLD_0 = @echo " CCLD " $@; -am__v_CCLD_1 = -SOURCES = $(ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_SOURCES) -DIST_SOURCES = $(am__ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_SOURCES_DIST) -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -ALL_LINGUAS = @ALL_LINGUAS@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -AR = @AR@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BUILD_CUPS_PPDS = @BUILD_CUPS_PPDS@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CONVERT = @CONVERT@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CUPS_CFLAGS = @CUPS_CFLAGS@ -CUPS_CONFIG = @CUPS_CONFIG@ -CUPS_LIBS = @CUPS_LIBS@ -CUPS_PPD_PS_LEVEL = @CUPS_PPD_PS_LEVEL@ -CYGPATH_W = @CYGPATH_W@ -DB2HTML = @DB2HTML@ -DB2PDF = @DB2PDF@ -DB2PS = @DB2PS@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DIALOG = @DIALOG@ -DLLTOOL = @DLLTOOL@ -DOXYGEN = @DOXYGEN@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -DVIPDF = @DVIPDF@ -DVIPS = @DVIPS@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -ENABLE_SHARED = @ENABLE_SHARED@ -ENABLE_STATIC = @ENABLE_STATIC@ -EXEEXT = @EXEEXT@ -FGREP = @FGREP@ -FIND = @FIND@ -FOOMATIC_CONFIGURE = @FOOMATIC_CONFIGURE@ -FOOMATIC_KITLOAD = @FOOMATIC_KITLOAD@ -FOOMATIC_PPDFILE = @FOOMATIC_PPDFILE@ -GENPPD_LIBS = @GENPPD_LIBS@ -GIMP2_CFLAGS = @GIMP2_CFLAGS@ -GIMP2_LIBS = @GIMP2_LIBS@ -GIMPTOOL2_CHECK = @GIMPTOOL2_CHECK@ -GLIB_MKENUMS = @GLIB_MKENUMS@ -GMSGFMT = @GMSGFMT@ -GMSGFMT_015 = @GMSGFMT_015@ -GNUCFLAGS = @GNUCFLAGS@ -GREP = @GREP@ -GTK2_CFLAGS = @GTK2_CFLAGS@ -GTK2_LIBS = @GTK2_LIBS@ -GUTENPRINTUI2_BINARY_AGE = @GUTENPRINTUI2_BINARY_AGE@ -GUTENPRINTUI2_CFLAGS = @GUTENPRINTUI2_CFLAGS@ -GUTENPRINTUI2_CURRENT_INTERFACE = @GUTENPRINTUI2_CURRENT_INTERFACE@ -GUTENPRINTUI2_INTERFACE_AGE = @GUTENPRINTUI2_INTERFACE_AGE@ -GUTENPRINTUI2_LIBDEPS = @GUTENPRINTUI2_LIBDEPS@ -GUTENPRINTUI2_LIBS = $(top_builddir)/src/gutenprintui2/libgutenprintui2.la -GUTENPRINTUI2_VERSION = @GUTENPRINTUI2_VERSION@ -GUTENPRINT_BASE_VERSION = @GUTENPRINT_BASE_VERSION@ -GUTENPRINT_BINARY_AGE = @GUTENPRINT_BINARY_AGE@ -GUTENPRINT_CFLAGS = @GUTENPRINT_CFLAGS@ -GUTENPRINT_CURRENT_INTERFACE = @GUTENPRINT_CURRENT_INTERFACE@ -GUTENPRINT_INTERFACE_AGE = @GUTENPRINT_INTERFACE_AGE@ -GUTENPRINT_LIBDEPS = @GUTENPRINT_LIBDEPS@ - -# Libraries -GUTENPRINT_LIBS = $(top_builddir)/src/main/libgutenprint.la -GUTENPRINT_MAJOR_VERSION = @GUTENPRINT_MAJOR_VERSION@ -GUTENPRINT_MICRO_VERSION = @GUTENPRINT_MICRO_VERSION@ -GUTENPRINT_MINOR_VERSION = @GUTENPRINT_MINOR_VERSION@ -GUTENPRINT_RELEASE_VERSION = @GUTENPRINT_RELEASE_VERSION@ -GUTENPRINT_VERSION = @GUTENPRINT_VERSION@ -IJS_CFLAGS = @IJS_CFLAGS@ -IJS_CONFIG = @IJS_CONFIG@ -IJS_LIBS = @IJS_LIBS@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INTLLIBS = @INTLLIBS@ -INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -LD = @LD@ -LDFLAGS = @LDFLAGS@ -LEX = @LEX@ -LEXLIB = @LEXLIB@ -LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -LIBICONV = @LIBICONV@ -LIBINTL = @LIBINTL@ -LIBM = @LIBM@ -LIBOBJS = @LIBOBJS@ -LIBREADLINE_DEPS = @LIBREADLINE_DEPS@ -LIBS = $(INTLLIBS) @LIBS@ -LIBTOOL = @LIBTOOL@ -LIBTOOL_DEPS = @LIBTOOL_DEPS@ -LIBUSB_CFLAGS = @LIBUSB_CFLAGS@ -LIBUSB_LIBS = @LIBUSB_LIBS@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTALLOCA = @LTALLOCA@ -LTLIBICONV = @LTLIBICONV@ -LTLIBINTL = @LTLIBINTL@ -LTLIBOBJS = @LTLIBOBJS@ -MAINT = @MAINT@ -MAINTAINER_CFLAGS = @MAINTAINER_CFLAGS@ -MAKEINFO = @MAKEINFO@ -MANIFEST_TOOL = @MANIFEST_TOOL@ -MKDIR_P = @MKDIR_P@ -MSGFMT = @MSGFMT@ -MSGFMT_015 = @MSGFMT_015@ -MSGMERGE = @MSGMERGE@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PERL = @PERL@ -PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ -PLUG_IN_PATH = @PLUG_IN_PATH@ -POSUB = @POSUB@ -RANLIB = @RANLIB@ -RELEASE_DATE = @RELEASE_DATE@ -RM = @RM@ -SED = @SED@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -STRIP = @STRIP@ -TEST = @TEST@ -TEXI2HTML = @TEXI2HTML@ -TRUE = @TRUE@ -USE_NLS = @USE_NLS@ -VERSION = @VERSION@ -WHICH_PPDS = @WHICH_PPDS@ -XGETTEXT = @XGETTEXT@ -XGETTEXT_015 = @XGETTEXT_015@ -YACC = @YACC@ -YFLAGS = @YFLAGS@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -cups_bindir = @cups_bindir@ -cups_conf_datadir = @cups_conf_datadir@ -cups_conf_serverbin = @cups_conf_serverbin@ -cups_conf_serverroot = @cups_conf_serverroot@ -cups_exec_prefix = @cups_exec_prefix@ -cups_prefix = @cups_prefix@ -cups_sbindir = @cups_sbindir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -gimp2_plug_indir = @gimp2_plug_indir@ -gutenprint_cflags = @gutenprint_cflags@ -gutenprint_libdeps = @gutenprint_libdeps@ -gutenprint_libs = @gutenprint_libs@ -gutenprintui2_cflags = @gutenprintui2_cflags@ -gutenprintui2_libdeps = @gutenprintui2_libdeps@ -gutenprintui2_libs = @gutenprintui2_libs@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target_alias = @target_alias@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_builddir)/include $(LOCAL_CPPFLAGS) $(GNUCFLAGS) -GUTENPRINTUI_LIBS = $(top_builddir)/src/gutenprintui/libgutenprintui.la -MAINTAINERCLEANFILES = Makefile.in -LOCAL_CPPFLAGS = $(GUTENPRINT_CFLAGS) @IJS_CFLAGS@ -@BUILD_GHOSTSCRIPT_TRUE@ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_SOURCES = ijsgutenprint.c -@BUILD_GHOSTSCRIPT_TRUE@ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_LDADD = $(GUTENPRINT_LIBS) $(IJS_LIBS) -@BUILD_GHOSTSCRIPT_TRUE@ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_LDFLAGS = $(STATIC_LDOPTS) -all: all-am - -.SUFFIXES: -.SUFFIXES: .c .lo .o .obj -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/scripts/global.mk $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/ghost/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --gnu src/ghost/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; -$(top_srcdir)/scripts/global.mk: - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): -install-binPROGRAMS: $(bin_PROGRAMS) - @$(NORMAL_INSTALL) - @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \ - fi; \ - for p in $$list; do echo "$$p $$p"; done | \ - sed 's/$(EXEEXT)$$//' | \ - while read p p1; do if test -f $$p \ - || test -f $$p1 \ - ; then echo "$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n;h' \ - -e 's|.*|.|' \ - -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ - sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) files[d] = files[d] " " $$1; \ - else { print "f", $$3 "/" $$4, $$1; } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ - $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-binPROGRAMS: - @$(NORMAL_UNINSTALL) - @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ - -e 's/$$/$(EXEEXT)/' \ - `; \ - test -n "$$list" || exit 0; \ - echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ - cd "$(DESTDIR)$(bindir)" && rm -f $$files - -clean-binPROGRAMS: - @list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \ - echo " rm -f" $$list; \ - rm -f $$list || exit $$?; \ - test -n "$(EXEEXT)" || exit 0; \ - list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ - echo " rm -f" $$list; \ - rm -f $$list - -ijsgutenprint.@GUTENPRINT_MAJOR_VERSION@.@GUTENPRINT_MINOR_VERSION@$(EXEEXT): $(ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_OBJECTS) $(ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_DEPENDENCIES) $(EXTRA_ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_DEPENDENCIES) - @rm -f ijsgutenprint.@GUTENPRINT_MAJOR_VERSION@.@GUTENPRINT_MINOR_VERSION@$(EXEEXT) - $(AM_V_CCLD)$(ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_LINK) $(ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_OBJECTS) $(ijsgutenprint_@GUTENPRINT_MAJOR_VERSION@_@GUTENPRINT_MINOR_VERSION@_LDADD) $(LIBS) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ijsgutenprint.Po@am__quote@ - -.c.o: -@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $< - -.c.obj: -@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'` - -.c.lo: -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs -tags TAGS: - -ctags CTAGS: - -cscope cscopelist: - - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-am -all-am: Makefile $(PROGRAMS) -installdirs: - for dir in "$(DESTDIR)$(bindir)"; do \ - test -z "$$dir" || $(MKDIR_P) "$$dir"; \ - done -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." - -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) -clean: clean-am - -clean-am: clean-binPROGRAMS clean-generic clean-libtool mostlyclean-am - -distclean: distclean-am - -rm -rf ./$(DEPDIR) - -rm -f Makefile -distclean-am: clean-am distclean-compile distclean-generic - -dvi: dvi-am - -dvi-am: - -html: html-am - -html-am: - -info: info-am - -info-am: - -install-data-am: - -install-dvi: install-dvi-am - -install-dvi-am: - -install-exec-am: install-binPROGRAMS - -install-html: install-html-am - -install-html-am: - -install-info: install-info-am - -install-info-am: - -install-man: - -install-pdf: install-pdf-am - -install-pdf-am: - -install-ps: install-ps-am - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-compile mostlyclean-generic \ - mostlyclean-libtool - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: uninstall-binPROGRAMS - -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-binPROGRAMS \ - clean-generic clean-libtool cscopelist-am ctags-am distclean \ - distclean-compile distclean-generic distclean-libtool distdir \ - dvi dvi-am html html-am info info-am install install-am \ - install-binPROGRAMS install-data install-data-am install-dvi \ - install-dvi-am install-exec install-exec-am install-html \ - install-html-am install-info install-info-am install-man \ - install-pdf install-pdf-am install-ps install-ps-am \ - install-strip installcheck installcheck-am installdirs \ - maintainer-clean maintainer-clean-generic mostlyclean \ - mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ - pdf pdf-am ps ps-am tags-am uninstall uninstall-am \ - uninstall-binPROGRAMS - - -@SET_MAKE@ - -# Rules - -$(top_builddir)/src/main/libgutenprint.la: - cd $(top_builddir)/src/main; \ - $(MAKE) - -$(top_builddir)/src/gutenprintui/libgutenprintui.la: - cd $(top_builddir)/src/gutenprintui; \ - $(MAKE) - -$(top_builddir)/src/gutenprintui2/libgutenprintui2.la: - cd $(top_builddir)/src/gutenprintui2; \ - $(MAKE) - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/src/ghost/ijsgutenprint.c b/src/ghost/ijsgutenprint.c deleted file mode 100644 index e62fe3c..0000000 --- a/src/ghost/ijsgutenprint.c +++ /dev/null @@ -1,1571 +0,0 @@ -/* - * $Id: ijsgutenprint.c,v 1.23 2010/07/19 11:14:04 rlk Exp $ - * - * IJS server for Gutenprint. - * - * Copyright 2001 Robert Krawitz (rlk@alum.mit.edu) - * - * Originally written by Russell Lang, copyright assigned to Robert Krawitz. - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the Free - * Software Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY - * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - * - * Revision History: - * - * See ChangeLog - */ - -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif -#include <gutenprint/gutenprint.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <unistd.h> -#include <locale.h> -#include <ijs.h> -#include <ijs_server.h> -#include <errno.h> -#include <gutenprint/gutenprint-intl-internal.h> - - -static int suppress_messages = 0; -volatile int SDEBUG = 1; -static int job_aborted = 0; - -#define STP_DEBUG(x) \ -do \ -{ \ - if (!suppress_messages) \ - fprintf(stderr, "DEBUG: "); \ - if (!suppress_messages) \ - x; \ -} while (0) - -typedef struct _GutenprintParamList GutenprintParamList; - -struct _GutenprintParamList { - GutenprintParamList *next; - char *key; - char *value; - int value_size; -}; - -typedef struct _IMAGE -{ - IjsServerCtx *ctx; - stp_vars_t *v; - char *filename; /* OutputFile */ - int fd; /* OutputFD + 1 (so that 0 is invalid) */ - int width; /* pixels */ - int height; /* pixels */ - int bps; /* bytes per sample */ - int n_chan; /* number of channels */ - int xres; /* dpi */ - int yres; - int output_type; - int left_margin; - int right_margin; - int top_margin; - int bottom_margin; - int monochrome_flag; /* for monochrome output */ - int row; /* row number in buffer */ - int row_width; /* length of a row */ - char *row_buf; /* buffer for raster */ - double total_bytes; /* total size of raster */ - double bytes_left; /* bytes remaining to be read */ - GutenprintParamList *params; -} IMAGE; - -static const char DeviceGray[] = "DeviceGray"; -static const char DeviceRGB[] = "DeviceRGB"; -static const char DeviceCMYK[] = "DeviceCMYK"; - -static const char *version_id; -static int version_is_ok = 1; -#define VERSION_MISMATCH "\ -ERROR: ijsgutenprint: the version of Gutenprint software installed (%s)\n\ -ERROR: ijsgutenprint: does not match the PPD file (%s). If you have upgraded your version\n\ -ERROR: ijsgutenprint: of Gutenprint recently, you must reinstall all printer queues.\n\ -ERROR: ijsgutenprint: Please refer to your vendor's documentation or the ``foomatic-ppdfile''\n\ -ERROR: ijsgutenprint: command for instructions.\n\ -ERROR: ijsgutenprint: the version of Gutenprint software installed (%s) does not match the PPD file (%s).\n" - -const char *gutenprint_ppd_version = NULL; -static int ppd_mode = 0; /* Use PPD-style margins */ - -static stp_string_list_t *option_remap_list = NULL; -static int print_messages_as_errors = 0; - -static double page_bytes_printed = 0; -static double total_bytes_printed = 0; - -static char * -c_strdup(const char *s) -{ - char *ret = stp_malloc(strlen(s) + 1); - strcpy(ret, s); - return ret; -} - -static int -image_init(IMAGE *img, IjsPageHeader *ph) -{ - img->width = ph->width; - img->height = ph->height; - img->bps = ph->bps; - img->n_chan = ph->n_chan; - img->xres = ph->xres; - img->yres = ph->yres; - - img->row = -1; - img->row_width = (ph->n_chan * ph->bps * ph->width + 7) >> 3; - if (img->row_buf) - stp_free(img->row_buf); - img->row_buf = (char *)stp_malloc(img->row_width); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: image_init\n")); - STP_DEBUG(fprintf(stderr, - "ijsgutenprint: ph width %d height %d bps %d n_chan %d xres %f yres %f\n", - ph->width, ph->height, ph->bps, ph->n_chan, ph->xres, - ph->yres)); - - stp_set_string_parameter(img->v, "ChannelBitDepth", "8"); - if ((img->bps == 1) && (img->n_chan == 1) && - (strncmp(ph->cs, DeviceGray, strlen(DeviceGray)) == 0)) - { - STP_DEBUG(fprintf(stderr, "ijsgutenprint: output monochrome\n")); - stp_set_string_parameter(img->v, "InputImageType", "Whitescale"); - stp_set_string_parameter(img->v, "PrintingMode", "BW"); - stp_set_string_parameter(img->v, "ColorCorrection", "Threshold"); - img->monochrome_flag = 1; - /* 8-bit greyscale */ - } - else if (img->bps == 8 || img->bps == 16) - { - if (img->bps == 8) - stp_set_string_parameter(img->v, "ChannelBitDepth", "8"); - else - stp_set_string_parameter(img->v, "ChannelBitDepth", "16"); - if ((img->n_chan == 1) && - (strncmp(ph->cs, DeviceGray, strlen(DeviceGray)) == 0)) - { - STP_DEBUG(fprintf(stderr, "ijsgutenprint: output gray\n")); - stp_set_string_parameter(img->v, "InputImageType", "Whitescale"); - stp_set_string_parameter(img->v, "PrintingMode", "BW"); - img->monochrome_flag = 0; - /* 8/16-bit greyscale */ - } - else if ((img->n_chan == 3) && - (strncmp(ph->cs, DeviceRGB, strlen(DeviceRGB)) == 0)) - { - STP_DEBUG(fprintf(stderr, "ijsgutenprint: output color\n")); - stp_set_string_parameter(img->v, "InputImageType", "RGB"); - stp_set_string_parameter(img->v, "PrintingMode", "Color"); - img->monochrome_flag = 0; - /* 24/48-bit RGB colour */ - } - else if ((img->n_chan == 4) && - (strncmp(ph->cs, DeviceCMYK, strlen(DeviceCMYK)) == 0)) - { - STP_DEBUG(fprintf(stderr, "ijsgutenprint: output CMYK\n")); - stp_set_string_parameter(img->v, "InputImageType", "CMYK"); - stp_set_string_parameter(img->v, "PrintingMode", "Color"); - img->monochrome_flag = 0; - /* 32/64-bit CMYK colour */ - } - } - else - { - fprintf(stderr, "ERROR: ijsgutenprint: Bad color space: bps %d channels %d space %s\n", - img->bps, img->n_chan, ph->cs); - /* unsupported */ - return -1; - } - - if (img->row_buf == NULL) - { - fprintf(stderr, "ERROR: ijsgutenprint: No row buffer\n"); - return -1; - } - - return 0; -} - -static void -image_finish(IMAGE *img) -{ - if (img->row_buf) - stp_free(img->row_buf); - img->row_buf = NULL; -} - -static double -get_float(const char *str, const char *name, double *pval) -{ - float new_value; - int status = 0; - /* Force locale to "C", because decimal numbers coming from the IJS - client are always with a decimal point, nver with a decimal comma */ - setlocale(LC_ALL, "C"); - if (sscanf(str, "%f", &new_value) == 1) - *pval = new_value; - else - { - fprintf(stderr, "ERROR: ijsgutenprint: Unable to parse parameter %s=%s (expect a number)\n", - name, str); - status = -1; - } - setlocale(LC_ALL, ""); - return status; -} - -static int -get_int(const char *str, const char *name, int *pval) -{ - int new_value; - int status = 0; - /* Force locale to "C", because decimal numbers sent to the IJS - client must have a decimal point, nver a decimal comma */ - setlocale(LC_ALL, "C"); - if (sscanf(str, "%d", &new_value) == 1) - *pval = new_value; - else - { - fprintf(stderr, "ERROR: ijsgutenprint: Unable to parse parameter %s=%s (expect a number)\n", - name, str); - status = -1; - } - setlocale(LC_ALL, ""); - return status; -} - -static int -parse_wxh_internal(const char *val, int size, double *pw, double *ph) -{ - char buf[256]; - char *tail; - int i; - - for (i = 0; i < size; i++) - if (val[i] == 'x') - break; - - if (i + 1 >= size) - return IJS_ESYNTAX; - - if (i >= sizeof(buf)) - return IJS_EBUF; - - memcpy (buf, val, i); - buf[i] = 0; - *pw = strtod (buf, &tail); - if (tail == buf) - return IJS_ESYNTAX; - - if (size - i > sizeof(buf)) - return IJS_EBUF; - - memcpy (buf, val + i + 1, size - i - 1); - buf[size - i - 1] = 0; - *ph = strtod (buf, &tail); - if (tail == buf) - return IJS_ESYNTAX; - - return 0; -} - -/* A C implementation of /^(\d\.+\-eE)+x(\d\.+\-eE)+$/ */ -static int -gutenprint_parse_wxh (const char *val, int size, double *pw, double *ph) -{ - /* Force locale to "C", because decimal numbers coming from the IJS - client are always with a decimal point, nver with a decimal comma */ - int status; - setlocale(LC_ALL, "C"); - status = parse_wxh_internal(val, size, pw, ph); - setlocale(LC_ALL, ""); - return status; -} - -/** - * gutenprint_find_key: Search parameter list for key. - * - * @key: key to look up - * - * Return value: GutenprintParamList entry matching @key, or NULL. - **/ -static GutenprintParamList * -gutenprint_find_key (GutenprintParamList *pl, const char *key) -{ - GutenprintParamList *curs; - - for (curs = pl; curs != NULL; curs = curs->next) - { - if (!strcmp (curs->key, key)) - return curs; - } - return NULL; -} - -static int -gutenprint_status_cb (void *status_cb_data, - IjsServerCtx *ctx, - IjsJobId job_id) -{ - return 0; -} - -static const char * -list_all_parameters(void) -{ - static char *param_string = NULL; - size_t param_length = 0; - size_t offset = 0; - if (param_length == 0) - { - stp_string_list_t *sl = stp_string_list_create(); - int printer_count = stp_printer_model_count(); - int i; - stp_string_list_add_string(sl, "PrintableArea", NULL); - stp_string_list_add_string(sl, "Dpi", NULL); - stp_string_list_add_string(sl, "PrintableTopLeft", NULL); - stp_string_list_add_string(sl, "DeviceManufacturer", NULL); - stp_string_list_add_string(sl, "DeviceModel", NULL); - stp_string_list_add_string(sl, "PageImageFormat", NULL); - stp_string_list_add_string(sl, "OutputFile", NULL); - stp_string_list_add_string(sl, "OutputFd", NULL); - stp_string_list_add_string(sl, "PaperSize", NULL); - stp_string_list_add_string(sl, "MediaName", NULL); - stp_string_list_add_string(sl, "STP_VERSION", NULL); - for (i = 0; i < printer_count; i++) - { - const stp_printer_t *printer = stp_get_printer_by_index(i); - stp_parameter_list_t params = - stp_get_parameter_list(stp_printer_get_defaults(printer)); - size_t count = stp_parameter_list_count(params); - int j; - if (strcmp(stp_printer_get_family(printer), "ps") == 0 || - strcmp(stp_printer_get_family(printer), "raw") == 0) - continue; - for (j = 0; j < count; j++) - { - const stp_parameter_t *param = - stp_parameter_list_param(params, j); - char *tmp = - stp_malloc(strlen(param->name) + strlen("STP_") + 1); - sprintf(tmp, "STP_%s", param->name); - if ((param->p_level < STP_PARAMETER_LEVEL_ADVANCED4) && - (param->p_type != STP_PARAMETER_TYPE_RAW) && - (param->p_type != STP_PARAMETER_TYPE_FILE) && - (!param->read_only) && - (strcmp(param->name, "Resolution") != 0) && - (strcmp(param->name, "PageSize") != 0) && - (!stp_string_list_is_present(sl, tmp))) - { - sprintf(tmp, "STP_%s", param->name); - stp_string_list_add_string(sl, tmp, NULL); - if ((param->p_type == STP_PARAMETER_TYPE_DOUBLE || - param->p_type == STP_PARAMETER_TYPE_DIMENSION) && - !param->read_only && param->is_active && - !param->is_mandatory) - { - char *tmp1 = - stp_malloc(strlen(param->name) + strlen("STP_Enable") + 1); - sprintf(tmp1, "STP_Enable%s", param->name); - stp_string_list_add_string(sl, tmp1, NULL); - stp_free(tmp1); - } - } - stp_free(tmp); - } - stp_parameter_list_destroy(params); - } - for (i = 0; i < stp_string_list_count(sl); i++) - param_length += strlen(stp_string_list_param(sl, i)->name) + 1; - param_string = stp_malloc(param_length); - for (i = 0; i < stp_string_list_count(sl); i++) - { - stp_param_string_t *param = stp_string_list_param(sl, i); - strcpy(param_string + offset, param->name); - offset += strlen(param->name) + 1; - param_string[offset - 1] = ','; - } - if (offset != param_length) - { - fprintf(stderr, "ERROR: ijsgutenprint: Bad string length %lu != %lu!\n", - (unsigned long) offset, - (unsigned long) param_length); - exit(1); - } - param_string[param_length - 1] = '\0'; - } - return param_string; -} - - -static int -gutenprint_list_cb (void *list_cb_data, - IjsServerCtx *ctx, - IjsJobId job_id, - char *val_buf, - int val_size) -{ - const char *param_list = list_all_parameters(); - int size = strlen (param_list); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: gutenprint_list_cb: %s\n", param_list)); - - if (size > val_size) - return IJS_EBUF; - - memcpy (val_buf, param_list, size); - return size; -} - -static int -gutenprint_enum_cb (void *enum_cb_data, - IjsServerCtx *ctx, - IjsJobId job_id, - const char *key, - char *val_buf, - int val_size) -{ - const char *val = NULL; - STP_DEBUG(fprintf(stderr, "ijsgutenprint: gutenprint_enum_cb: key=%s\n", key)); - if (!strcmp (key, "ColorSpace")) - val = "DeviceRGB,DeviceGray,DeviceCMYK"; - else if (!strcmp (key, "DeviceManufacturer")) - val = "Gutenprint"; - else if (!strcmp (key, "DeviceModel")) - val = "gutenprint"; - else if (!strcmp (key, "PageImageFormat")) - val = "Raster"; - else if (!strcmp (key, "BitsPerSample")) - val = "8,16"; - else if (!strcmp (key, "ByteSex")) - { -#if __BYTE_ORDER == __LITTLE_ENDIAN - val="little-endian"; -#else - val="big-endian"; -#endif - } - - if (val == NULL) - return IJS_EUNKPARAM; - else - { - int size = strlen (val); - - if (size > val_size) - return IJS_EBUF; - memcpy (val_buf, val, size); - return size; - } -} - -static int -gutenprint_get_cb (void *get_cb_data, - IjsServerCtx *ctx, - IjsJobId job_id, - const char *key, - char *val_buf, - int val_size) -{ - IMAGE *img = (IMAGE *)get_cb_data; - stp_vars_t *v = img->v; - const stp_printer_t *printer = stp_get_printer(v); - GutenprintParamList *pl = img->params; - GutenprintParamList *curs; - const char *val = NULL; - char buf[256]; - - STP_DEBUG(fprintf(stderr, "ijsgutenprint: gutenprint_get_cb: %s\n", key)); - if (!printer) - { - if (strlen(stp_get_driver(v)) == 0) - fprintf(stderr, "ERROR: ijsgutenprint: Printer must be specified with -sDeviceModel\n"); - else - fprintf(stderr, "ERROR: ijsgutenprint: Printer %s is not a known model\n", - stp_get_driver(v)); - return IJS_EUNKPARAM; - } - curs = gutenprint_find_key (pl, key); - if (curs != NULL) - { - if (curs->value_size > val_size) - return IJS_EBUF; - memcpy (val_buf, curs->value, curs->value_size); - return curs->value_size; - } - - if (!strcmp(key, "PrintableArea")) - { - int l, r, b, t; - int h, w; - if (ppd_mode) - { - stp_get_media_size(v, &w, &h); - stp_get_maximum_imageable_area(v, &l, &r, &b, &t); - if (l < 0) - l = 0; - if (r > w) - r = w; - if (t < 0) - t = 0; - if (b > h) - b = h; - } - else - stp_get_imageable_area(v, &l, &r, &b, &t); - - - h = b - t; - w = r - l; - /* Force locale to "C", because decimal numbers sent to the IJS - client must have a decimal point, nver a decimal comma */ - setlocale(LC_ALL, "C"); - sprintf(buf, "%gx%g", (double) w / 72.0, (double) h / 72.0); - setlocale(LC_ALL, ""); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: PrintableArea %d %d %s\n", h, w, buf)); - val = buf; - } - else if (!strcmp(key, "Dpi")) - { - int x, y; - stp_describe_resolution(v, &x, &y); - /* Force locale to "C", because decimal numbers sent to the IJS - client must have a decimal point, nver a decimal comma */ - setlocale(LC_ALL, "C"); - sprintf(buf, "%d", x); - setlocale(LC_ALL, ""); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: Dpi %d %d (%d) %s\n", x, y, x, buf)); - val = buf; - } - else if (!strcmp(key, "PrintableTopLeft")) - { - int l, r, b, t; - int h, w; - stp_get_media_size(v, &w, &h); - if (ppd_mode) - { - stp_get_maximum_imageable_area(v, &l, &r, &b, &t); - if (l < 0) - l = 0; - if (r > w) - r = w; - if (t < 0) - t = 0; - if (b > h) - b = h; - } - else - stp_get_imageable_area(v, &l, &r, &b, &t); - /* Force locale to "C", because decimal numbers sent to the IJS - client must have a decimal point, nver a decimal comma */ - setlocale(LC_ALL, "C"); - sprintf(buf, "%gx%g", (double) l / 72.0, (double) t / 72.0); - setlocale(LC_ALL, ""); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: PrintableTopLeft %d %d %s\n", t, l, buf)); - val = buf; - } - else if (!strcmp (key, "DeviceManufacturer")) - val = "Gutenprint"; - else if (!strcmp (key, "DeviceModel")) - val = stp_get_driver(img->v); - else if (!strcmp (key, "PageImageFormat")) - val = "Raster"; - - if (val == NULL) - return IJS_EUNKPARAM; - else - { - int size = strlen (val); - - if (size > val_size) - return IJS_EBUF; - memcpy (val_buf, val, size); - return size; - } -} - -static void -print_debug_setcb(const char *key, const char *value, int value_size) -{ - fprintf (stderr, "ijsgutenprint: gutenprint_set_cb: %s='", key); - fwrite (value, 1, value_size, stderr); - fputs ("'\n", stderr); -} - -static int -gutenprint_set_cb (void *set_cb_data, IjsServerCtx *ctx, IjsJobId jobid, - const char *key, const char *value, int value_size) -{ - int code = 0; - char vbuf[256]; - int i; - double z = 0; - IMAGE *img = (IMAGE *)set_cb_data; - STP_DEBUG(print_debug_setcb(key, value, value_size)); - if (value_size > sizeof(vbuf)-1) - return -1; - memset(vbuf, 0, sizeof(vbuf)); - memcpy(vbuf, value, value_size); - - if (strcmp(key, "OutputFile") == 0) - { - if (img->filename) - stp_free(img->filename); - img->filename = c_strdup(vbuf); - } - else if (strcmp(key, "OutputFD") == 0) - { - /* Force locale to "C", because decimal numbers sent to the IJS - client must have a decimal point, nver a decimal comma */ - setlocale(LC_ALL, "C"); - img->fd = atoi(vbuf) + 1; - setlocale(LC_ALL, ""); - } - else if (strcmp(key, "DeviceManufacturer") == 0) - ; /* We don't care who makes it */ - else if (strcmp(key, "DeviceModel") == 0) - { - const stp_printer_t *printer = stp_get_printer_by_driver(vbuf); - stp_set_driver(img->v, vbuf); - if (printer && - strcmp(stp_printer_get_family(printer), "ps") != 0 && - strcmp(stp_printer_get_family(printer), "raw") != 0) - { - stp_set_printer_defaults(img->v, printer); - /* Reset JobMode to "Job" */ - stp_set_string_parameter(img->v, "JobMode", "Job"); - } - else - { - fprintf(stderr, "ERROR: ijsgutenprint: unknown DeviceModel %s\n", vbuf); - code = IJS_ERANGE; - } - } - else if (strcmp(key, "TopLeft") == 0) - { - int l, r, b, t, pw, ph; - double w, h; - stp_get_media_size(img->v, &pw, &ph); - if (ppd_mode) - { - stp_get_maximum_imageable_area(img->v, &l, &r, &b, &t); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: l %d r %d t %d b %d pw %d ph %d\n", - l, r, t, b, pw, ph)); - if (l < 0) - l = 0; - if (r > pw) - r = pw; - if (t < 0) - t = 0; - if (b > ph) - b = ph; - } - else - stp_get_imageable_area(img->v, &l, &r, &b, &t); - STP_DEBUG(fprintf(stderr, "ijsgutenprint ppd_mode %d top left: %s\n", - ppd_mode, vbuf)); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: l %d r %d t %d b %d pw %d ph %d\n", - l, r, t, b, pw, ph)); - code = gutenprint_parse_wxh(vbuf, strlen(vbuf), &w, &h); - if (code == 0) - { - int al = (w * 72) + .5; - int ah = (h * 72) + .5; - STP_DEBUG(fprintf(stderr, "ijsgutenprint: left top %f %f %d %d %s\n", - w * 72, h * 72, al, ah, vbuf)); - if (al >= 0) - stp_set_left(img->v, al); - if (ah >= 0) - stp_set_top(img->v, ah); - stp_set_width(img->v, r - l); - stp_set_height(img->v, b - t); - } - else - fprintf(stderr, "ERROR: ijsgutenprint: cannot parse TopLeft %s\n", vbuf); - } - else if (strcmp(key, "PaperSize") == 0) - { - double w, h; - code = gutenprint_parse_wxh(vbuf, strlen(vbuf), &w, &h); - if (code == 0) - { - const stp_papersize_t *p; - w *= 72; - h *= 72; - STP_DEBUG(fprintf(stderr, "ijsgutenprint: paper size %f %f %s\n", w, h, vbuf)); - stp_set_page_width(img->v, w); - stp_set_page_height(img->v, h); - if ((p = stp_get_papersize_by_size_exact(h, w)) != NULL) - { - STP_DEBUG(fprintf(stderr, "ijsgutenprint: Found page size %s\n", p->name)); - stp_set_string_parameter(img->v, "PageSize", p->name); - } - else - STP_DEBUG(fprintf(stderr, "ijsgutenprint: No matching paper size found\n")); - } - else - fprintf(stderr, "ERROR: ijsgutenprint: cannot parse PaperSize %s\n", vbuf); - } - -/* - * Duplex & Tumble. The PS: values come from the PostScript document, the - * others come from the command line. However, the PS: values seem to get - * fed back again as non PS: values after the command line is processed. - * The net effect is that the command line is always overridden by the - * values from the document. - */ - - else if ((strcmp (key, "Duplex") == 0) || (strcmp (key, "PS:Duplex") == 0)) - { - stp_set_string_parameter(img->v, "x_Duplex", vbuf); - } - else if ((strcmp (key, "Tumble") == 0) || (strcmp (key, "PS:Tumble") == 0)) - { - stp_set_string_parameter(img->v, "x_Tumble", vbuf); - } - else if (strcmp(key, "STP_VERSION") == 0) - { - ppd_mode = 1; - if (strcmp(vbuf, version_id) != 0) - { - fprintf(stderr, VERSION_MISMATCH, - version_id, vbuf, version_id, vbuf); - version_is_ok = 0; - gutenprint_ppd_version = c_strdup(vbuf); - code = IJS_ERANGE; - } - } - else if (strncmp(key, "STP_OPT_REMAP_", strlen("STP_OPT_REMAP_")) == 0) - { - const char *xkey = key + strlen("STP_OPT_REMAP_"); - char *buf1 = stp_malloc(strlen("STP_OPT_") + strlen(xkey) + 1); - char *buf2 = c_strdup(vbuf); - strcpy(buf1, "STP_OPT_"); - strcpy(buf1 + strlen("STP_OPT_"), xkey); - stp_string_list_add_string(option_remap_list, buf1, buf2); - stp_free(buf1); - stp_free(buf2); - } - else if (strncmp(key, "STP_", 4) == 0) - { - stp_curve_t *curve; - stp_parameter_t desc; - const char *xkey = key + 4; - stp_param_string_t *pstr = stp_string_list_find(option_remap_list, key); - if (pstr) - { - xkey = pstr->text; - STP_DEBUG(fprintf(stderr, "ijsgutenprint: remapping %s to %s\n", - key, xkey)); - } - - stp_describe_parameter(img->v, xkey, &desc); - switch (desc.p_type) - { - case STP_PARAMETER_TYPE_STRING_LIST: - stp_set_string_parameter(img->v, xkey, vbuf); - break; - case STP_PARAMETER_TYPE_FILE: - stp_set_file_parameter(img->v, xkey, vbuf); - break; - case STP_PARAMETER_TYPE_CURVE: - curve = stp_curve_create_from_string(vbuf); - if (curve) - { - stp_set_curve_parameter(img->v, xkey, curve); - stp_curve_destroy(curve); - } - else - fprintf(stderr, "ERROR: ijsgutenprint: cannot parse curve %s\n", vbuf); - break; - case STP_PARAMETER_TYPE_DOUBLE: - code = get_float(vbuf, xkey, &z); - if (code == 0) - stp_set_float_parameter(img->v, xkey, z); - else - fprintf(stderr, "ERROR: ijsgutenprint: cannot parse %s float %s\n", xkey, vbuf); - break; - case STP_PARAMETER_TYPE_INT: - code = get_int(vbuf, xkey, &i); - if (code == 0) - stp_set_int_parameter(img->v, xkey, i); - else - fprintf(stderr, "ERROR: ijsgutenprint: cannot parse %s int %s\n", xkey, vbuf); - break; - case STP_PARAMETER_TYPE_DIMENSION: - code = get_int(vbuf, xkey, &i); - if (code == 0) - stp_set_dimension_parameter(img->v, xkey, i); - else - fprintf(stderr, "ERROR: ijsgutenprint: cannot parse %s dimension %s\n", xkey, vbuf); - break; - case STP_PARAMETER_TYPE_BOOLEAN: - if (strcmp(vbuf, "False") == 0 || - strcmp(vbuf, "false") == 0 || - strcmp(vbuf, "FALSE") == 0 || - strcmp(vbuf, "0") == 0) - stp_set_boolean_parameter(img->v, xkey, 0); - else if (strcmp(vbuf, "True") == 0 || - strcmp(vbuf, "true") == 0 || - strcmp(vbuf, "TRUE") == 0 || - strcmp(vbuf, "1") == 0) - stp_set_boolean_parameter(img->v, xkey, 1); - else - fprintf(stderr, "ERROR: ijsgutenprint: cannot parse %s boolean %s\n", xkey, vbuf); - break; - default: - if (strncmp(xkey, "Enable", strlen("Enable")) == 0) - { - STP_DEBUG(fprintf(stderr, - "ijsgutenprint: Setting dummy enable parameter %s %s\n", - xkey, vbuf)); - stp_set_string_parameter(img->v, xkey, vbuf); - } - else - fprintf(stderr, "ERROR: ijsgutenprint: Bad parameter %s %d\n", key, desc.p_type); - } - stp_parameter_description_destroy(&desc); - } - - if (code == 0) - { - GutenprintParamList *pl = gutenprint_find_key (img->params, key); - - if (pl == NULL) - { - pl = (GutenprintParamList *)stp_malloc (sizeof (GutenprintParamList)); - pl->next = img->params; - pl->key = stp_malloc (strlen(key) + 1); - memcpy (pl->key, key, strlen(key) + 1); - img->params = pl; - } - else - { - stp_free (pl->value); - } - pl->value = stp_malloc (value_size); - memcpy (pl->value, value, value_size); - pl->value_size = value_size; - } - else - fprintf(stderr, "ERROR: ijsgutenprint: bad key code %d\n", code); - - return code; -} - -/**********************************************************/ - -static void -gutenprint_errfunc(void *file, const char *buf, size_t bytes) -{ - size_t next_nl = 0; - size_t where = 0; - FILE *prn = (FILE *)file; - while (where < bytes) - { - if (print_messages_as_errors) - fputs("ERROR: Gutenprint: ", prn); - else - fputs("DEBUG: Gutenprint internal: ", prn); - while (next_nl < bytes) - { - if (buf[next_nl++] == '\n') - break; - } - fwrite(buf + where, 1, next_nl - where, prn); - where = next_nl; - } -} - -static void -gutenprint_outfunc(void *data, const char *buffer, size_t bytes) -{ - page_bytes_printed += bytes; - total_bytes_printed += bytes; - if ((data != NULL) && (buffer != NULL) && (bytes != 0)) - fwrite(buffer, 1, bytes, (FILE *)data); -} - -/**********************************************************/ -/* stp_image_t functions */ - -static int -gutenprint_image_width(stp_image_t *image) -{ - IMAGE *img = (IMAGE *)(image->rep); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: image width %d\n", img->width)); - return img->width; -} - -static int -gutenprint_image_height(stp_image_t *image) -{ - IMAGE *img = (IMAGE *)(image->rep); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: image height %d (%d)\n", - img->height, img->height * img->xres / img->yres)); - return img->height * img->xres / img->yres; -} - -static void -throwaway_data(int amount, IMAGE *img) -{ - char trash[4096]; /* Throwaway */ - int block_count = amount / 4096; - int leftover = amount % 4096; - while (block_count > 0) - { - ijs_server_get_data(img->ctx, trash, 4096); - block_count--; - } - if (leftover) - ijs_server_get_data(img->ctx, trash, leftover); -} - -static int -image_next_row(IMAGE *img) -{ - int status = 0; - double n_bytes = img->bytes_left; - if (img->bytes_left) - { - - if (n_bytes > img->row_width) - n_bytes = img->row_width; -#ifdef VERBOSE - STP_DEBUG(fprintf(stderr, "ijsgutenprint: %.0f bytes left, reading %.d, on row %d\n", - img->bytes_left, (int) n_bytes, img->row)); -#endif - throwaway_data(img->left_margin, img); - status = ijs_server_get_data(img->ctx, img->row_buf, (int) n_bytes); - if (status) - { - STP_DEBUG(fprintf(stderr, "ERROR: ijsgutenprint: page aborted (%d) at line %d!\n", - status, img->row)); - job_aborted = 1; - return status; - } - else - { - img->row++; - img->bytes_left -= (n_bytes + img->right_margin + img->left_margin); - } - throwaway_data(img->right_margin, img); - } - else - return 1; /* Done */ - return status; -} - -static stp_image_status_t -gutenprint_image_get_row(stp_image_t *image, unsigned char *data, size_t byte_limit, - int row) -{ - IMAGE *img = (IMAGE *)(image->rep); - int physical_row = row * img->yres / img->xres; - - if ((physical_row < 0) || (physical_row >= img->height)) - return STP_IMAGE_STATUS_ABORT; - - /* Read until we reach the requested row. */ - while (physical_row > img->row) - { - if (image_next_row(img)) - return STP_IMAGE_STATUS_ABORT; - } - - if (physical_row == img->row) - { - unsigned i, j, length; - switch (img->bps) - { - case 16: - case 8: - memcpy(data, img->row_buf, img->row_width); - break; - case 1: - length = img->width / 8; - for (i = 0; i < length; i++) - for (j = 128; j > 0; j >>= 1) - { - if (img->row_buf[i] & j) - data[0] = 255; - else - data[0] = 0; - data++; - } - length = img->width % 8; - for (j = 128; j > 1 << (7 - length); j >>= 1) - { - if (img->row_buf[i] & j) - data[0] = 255; - else - data[0] = 0; - data++; - } - break; - default: - return STP_IMAGE_STATUS_ABORT; - } - } - else - return STP_IMAGE_STATUS_ABORT; - return STP_IMAGE_STATUS_OK; -} - - -static const char * -gutenprint_image_get_appname(stp_image_t *image) -{ - return "ijsgutenprint"; -} - -/**********************************************************/ - -static const char * -safe_get_string_parameter(const stp_vars_t *v, const char *param) -{ - const char *val = stp_get_string_parameter(v, param); - if (val) - return val; - else - return "NULL"; -} - -static void -stp_dbg(const char *msg, const stp_vars_t *v) -{ - stp_parameter_list_t params = stp_get_parameter_list(v); - int count = stp_parameter_list_count(params); - int i; - if (suppress_messages) - return; - fprintf(stderr, "DEBUG: %s\n", msg); - fprintf(stderr, "DEBUG: ijsgutenprint: Settings: Model %s\n", stp_get_driver(v)); - for (i = 0; i < count; i++) - { - const stp_parameter_t *p = stp_parameter_list_param(params, i); - switch (p->p_type) - { - case STP_PARAMETER_TYPE_DOUBLE: - if (stp_check_float_parameter(v, p->name, STP_PARAMETER_DEFAULTED)) - fprintf(stderr, "DEBUG: ijsgutenprint: Settings: %s %f\n", - p->name, stp_get_float_parameter(v, p->name)); - break; - case STP_PARAMETER_TYPE_INT: - if (stp_check_int_parameter(v, p->name, STP_PARAMETER_DEFAULTED)) - fprintf(stderr, "DEBUG: ijsgutenprint: Settings: %s %d\n", - p->name, stp_get_int_parameter(v, p->name)); - break; - case STP_PARAMETER_TYPE_DIMENSION: - if (stp_check_dimension_parameter(v, p->name, STP_PARAMETER_DEFAULTED)) - fprintf(stderr, "DEBUG: ijsgutenprint: Settings: %s %d\n", - p->name, stp_get_dimension_parameter(v, p->name)); - break; - case STP_PARAMETER_TYPE_BOOLEAN: - if (stp_check_boolean_parameter(v, p->name, STP_PARAMETER_DEFAULTED)) - fprintf(stderr, "DEBUG: ijsgutenprint: Settings: %s %s\n", - p->name, - stp_get_boolean_parameter(v, p->name) ? "true" : "false"); - break; - case STP_PARAMETER_TYPE_STRING_LIST: - if (stp_check_string_parameter(v, p->name, STP_PARAMETER_DEFAULTED)) - fprintf(stderr, "DEBUG: ijsgutenprint: Settings: %s %s\n", - p->name, safe_get_string_parameter(v, p->name)); - break; - case STP_PARAMETER_TYPE_CURVE: - if (stp_check_curve_parameter(v, p->name, STP_PARAMETER_DEFAULTED)) - { - char *curve = - stp_curve_write_string(stp_get_curve_parameter(v, p->name)); - fprintf(stderr, "DEBUG: ijsgutenprint: Settings: %s %s\n", - p->name, curve); - stp_free(curve); - } - break; - default: - break; - } - } - stp_parameter_list_destroy(params); -} - -static void -purge_unused_float_parameters(stp_vars_t *v) -{ - int i; - stp_parameter_list_t params = stp_get_parameter_list(v); - size_t count = stp_parameter_list_count(params); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: Purging unused floating point parameters\n")); - for (i = 0; i < count; i++) - { - const stp_parameter_t *param = stp_parameter_list_param(params, i); - if (param->p_type == STP_PARAMETER_TYPE_DOUBLE && - !param->read_only && param->is_active && !param->is_mandatory) - { - size_t bytes = strlen(param->name) + strlen("Enable") + 1; - char *tmp = stp_malloc(bytes); - const char *value; - sprintf(tmp, "Enable%s", param->name); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: Looking for parameter %s\n", tmp)); - value = stp_get_string_parameter(v, tmp); - if (value) - { - STP_DEBUG(fprintf(stderr, "ijsgutenprint: Found %s: %s\n", tmp, value)); - if (strcmp(value, "Disabled") == 0) - { - STP_DEBUG(fprintf(stderr, "ijsgutenprint: Clearing %s\n", param->name)); - stp_clear_float_parameter(v, param->name); - } - } - stp_free(tmp); - } - if (param->p_type == STP_PARAMETER_TYPE_DIMENSION && - !param->read_only && param->is_active && !param->is_mandatory) - { - size_t bytes = strlen(param->name) + strlen("Enable") + 1; - char *tmp = stp_malloc(bytes); - const char *value; - sprintf(tmp, "Enable%s", param->name); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: Looking for parameter %s\n", tmp)); - value = stp_get_string_parameter(v, tmp); - if (value) - { - STP_DEBUG(fprintf(stderr, "ijsgutenprint: Found %s: %s\n", tmp, value)); - if (strcmp(value, "Disabled") == 0) - { - STP_DEBUG(fprintf(stderr, "ijsgutenprint: Clearing %s\n", param->name)); - stp_clear_dimension_parameter(v, param->name); - } - } - stp_free(tmp); - } - } - stp_parameter_list_destroy(params); -} - -static void -validate_options(stp_image_t *image) -{ - IMAGE *im = (IMAGE *) (image->rep); - stp_vars_t *v = im->v; - stp_parameter_list_t params = stp_get_parameter_list(v); - int nparams = stp_parameter_list_count(params); - int i; - for (i = 0; i < nparams; i++) - { - const stp_parameter_t *param = stp_parameter_list_param(params, i); - stp_parameter_t desc; - stp_describe_parameter(v, param->name, &desc); - if (desc.p_type == STP_PARAMETER_TYPE_STRING_LIST) - { - if (!stp_string_list_is_present - (desc.bounds.str, stp_get_string_parameter(v, desc.name))) - { - STP_DEBUG(fprintf(stderr, "ijsgutenprint: clearing string %s (%s)\n", - desc.name, safe_get_string_parameter(v, desc.name))); - stp_clear_string_parameter(v, desc.name); - if (!desc.read_only && desc.is_mandatory && desc.is_active) - { - STP_DEBUG(fprintf(stderr, "ijsgutenprint: setting default string %s to %s\n", - desc.name, desc.deflt.str ? desc.deflt.str : "(null)")); - stp_set_string_parameter(v, desc.name, desc.deflt.str); - if (strcmp(desc.name, "PageSize") == 0) - { - const stp_papersize_t *ps = - stp_get_papersize_by_name(desc.deflt.str); - if (ps->width > 0) - { - STP_DEBUG(fprintf(stderr, "ijsgutenprint: setting page width to %d\n", - ps->width)); - if (ps->width < stp_get_page_width(v)) - stp_set_page_width(v, ps->width); - if (ps->width < stp_get_left(v) + stp_get_width(v)) - { -#if 0 - if (im->width < ps->width) - im->width = ps->width; -#endif - STP_DEBUG(fprintf(stderr, "ijsgutenprint: setting width to %d\n", - ps->width - stp_get_left(v))); - stp_set_width(v, ps->width - stp_get_left(v)); - } - } - if (ps->height > 0) - { - STP_DEBUG(fprintf(stderr, "ijsgutenprint: setting page height to %d\n", - ps->height)); - if (ps->height < stp_get_page_height(v)) - stp_set_page_height(v, ps->height); - if (ps->height < stp_get_top(v) + stp_get_height(v)) - { -#if 0 - if (im->height < ps->height) - im->height = ps->height; -#endif - STP_DEBUG(fprintf(stderr, "ijsgutenprint: setting height to %d\n", - ps->height - stp_get_top(v))); - stp_set_height(v, ps->height - stp_get_top(v)); - } - } - } - } - } - } - stp_parameter_description_destroy(&desc); - } - stp_parameter_list_destroy(params); -} - - - -int -main (int argc, char **argv) -{ - IjsPageHeader ph; - int status; - int page = 0; - IMAGE img; - stp_image_t si; - const stp_printer_t *printer = NULL; - FILE *f = NULL; - int l, t, r, b, w, h; - int width, height; - - if (getenv("STP_SUPPRESS_MESSAGES")) - suppress_messages = 1; - - if (getenv("STP_DEBUG_STARTUP")) - while (SDEBUG) - ; - - memset(&img, 0, sizeof(img)); - - stp_init(); - version_id = stp_get_version(); - option_remap_list = stp_string_list_create(); - - img.ctx = ijs_server_init(); - if (img.ctx == NULL) - return 1; - - img.v = stp_vars_create(); - if (img.v == NULL) - { - ijs_server_done(img.ctx); - return 1; - } - stp_set_top(img.v, 0); - stp_set_left(img.v, 0); - - /* Error messages to stderr. */ - stp_set_errfunc(img.v, gutenprint_errfunc); - stp_set_errdata(img.v, stderr); - - /* Printer data goes to file f, but we haven't opened it yet. */ - stp_set_outfunc(img.v, gutenprint_outfunc); - stp_set_outdata(img.v, NULL); - - memset(&si, 0, sizeof(si)); - si.width = gutenprint_image_width; - si.height = gutenprint_image_height; - si.get_row = gutenprint_image_get_row; - si.get_appname = gutenprint_image_get_appname; - si.rep = &img; - - ijs_server_install_status_cb (img.ctx, gutenprint_status_cb, &img); - ijs_server_install_list_cb (img.ctx, gutenprint_list_cb, &img); - ijs_server_install_enum_cb (img.ctx, gutenprint_enum_cb, &img); - ijs_server_install_get_cb (img.ctx, gutenprint_get_cb, &img); - ijs_server_install_set_cb(img.ctx, gutenprint_set_cb, &img); - - stp_dbg("ijsgutenprint: about to start\n", img.v); - - STP_DEBUG(fprintf(stderr, "ijsgutenprint: About to get page header\n")); - status = ijs_server_get_page_header(img.ctx, &ph); - while (status == 0) - { - stp_vars_t *old_v = NULL; - STP_DEBUG(fprintf(stderr, "ijsgutenprint: got page header, %d x %d\n", - ph.width, ph.height)); - stp_dbg("ijsgutenprint: have page header\n", img.v); - - status = image_init(&img, &ph); - if (status) - { - fprintf(stderr, "ERROR: ijsgutenprint: image_init failed %d\n", status); - break; - } - - if (page == 0) - { - if (img.fd) - { - f = fdopen(img.fd - 1, "wb"); - if (!f) - { - fprintf(stderr, "ERROR: ijsgutenprint: Unable to open file descriptor: %s\n", - strerror(errno)); - status = -1; - break; - } - } - else if (img.filename && strlen(img.filename) > 0) - { - f = fopen(img.filename, "wb"); - if (!f) - { - status = -1; - fprintf(stderr, "ERROR: ijsgutenprint: Unable to open %s: %s\n", img.filename, - strerror(errno)); - break; - } - } - - /* Printer data to file */ - stp_set_outdata(img.v, f); - } - - printer = stp_get_printer(img.v); - if (printer == NULL) - { - fprintf(stderr, "ERROR: ijsgutenprint: Unknown printer %s\n", - stp_get_driver(img.v)); - status = -1; - break; - } - purge_unused_float_parameters(img.v); - stp_merge_printvars(img.v, stp_printer_get_defaults(printer)); - - - img.total_bytes = (double) ((ph.n_chan * ph.bps * ph.width + 7) >> 3) - * (double) ph.height; - img.bytes_left = img.total_bytes; - - stp_set_float_parameter(img.v, "AppGamma", 1.0); - stp_get_media_size(img.v, &w, &h); - stp_get_imageable_area(img.v, &l, &r, &b, &t); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: chan %d bps %d image w %d %d h %d %d\n", - ph.n_chan, ph.bps, stp_get_width(img.v), img.width, - stp_get_height(img.v), img.height)); - if (ppd_mode) - { - int lt, rt, bt, tt; - - stp_get_maximum_imageable_area(img.v, <, &rt, &bt, &tt); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: w %d h %d l %d %d t %d %d r %d %d b %d %d\n", - w, h, l, lt, t, tt, r, rt, b, bt)); - if (lt < 0) - lt = 0; - if (tt < 0) - tt = 0; - if (rt > w) - rt = w; - if (bt > h) - bt = h; - if (l < 0) - l = 0; - if (t < 0) - t = 0; - if (r > w + l) - r = w + l; - if (b > h + t) - b = h + t; - STP_DEBUG(fprintf(stderr, "ijsgutenprint: w %d h %d l %d %d t %d %d r %d %d b %d %d\n", - w, h, l, lt, t, tt, r, rt, b, bt)); - if (lt < l) - { - STP_DEBUG(fprintf(stderr, "ijsgutenprint: l %d, lt %d\n", l, lt)); - img.left_margin = (l - lt) * ph.xres * ph.n_chan * ph.bps / 8 / 72; - img.width -= (l - lt) * ph.xres / 72; - STP_DEBUG(fprintf(stderr, "ijsgutenprint: chan %d bps %d image w %d %d h %d %d\n", - ph.n_chan, ph.bps, stp_get_width(img.v), img.width, - stp_get_height(img.v), img.height)); - } - else - img.left_margin = 0; - stp_set_left(img.v, l); - if (tt < t) - { - STP_DEBUG(fprintf(stderr, "ijsgutenprint: t %d, tt %d\n", t, tt)); - img.top_margin = (t - tt) * ph.yres * ph.n_chan * ph.bps / 8 / 72; - img.height -= (t - tt) * ph.yres / 72; - STP_DEBUG(fprintf(stderr, "ijsgutenprint: chan %d bps %d image w %d %d h %d %d\n", - ph.n_chan, ph.bps, stp_get_width(img.v), img.width, - stp_get_height(img.v), img.height)); - } - else - img.top_margin = 0; - stp_set_top(img.v, t); - if (rt > r) - { - STP_DEBUG(fprintf(stderr, "ijsgutenprint: r %d, rt %d\n", r, rt)); - img.right_margin = (rt - r) * ph.xres * ph.n_chan * ph.bps / 8 / 72; - img.width -= (rt - r) * ph.xres / 72; - STP_DEBUG(fprintf(stderr, "ijsgutenprint: chan %d bps %d image w %d %d h %d %d\n", - ph.n_chan, ph.bps, stp_get_width(img.v), img.width, - stp_get_height(img.v), img.height)); - } - else - img.right_margin = 0; - if (bt > b) - { - STP_DEBUG(fprintf(stderr, "ijsgutenprint: b %d, bt %d\n", b, bt)); - img.bottom_margin = (bt - b) * ph.yres * ph.n_chan * ph.bps / 8 / 72; - img.height -= (bt - b) * ph.yres / 72; - STP_DEBUG(fprintf(stderr, "ijsgutenprint: chan %d bps %d image w %d %d h %d %d\n", - ph.n_chan, ph.bps, stp_get_width(img.v), img.width, - stp_get_height(img.v), img.height)); - } - else - img.bottom_margin = 0; - } - if (l < 0) - width = r; - else - width = r - l; - stp_set_width(img.v, width); - if (t < 0) - height = b; - else - height = b - t; - img.row_width -= img.left_margin; - img.row_width -= img.right_margin; - stp_set_height(img.v, height); - stp_set_int_parameter(img.v, "PageNumber", page); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: w %d h %d l %d r %d t %d b %d\n", - width, height, l, r, t, b)); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: chan %d bps %d image w %d %d h %d %d\n", - ph.n_chan, ph.bps, stp_get_width(img.v), img.width, - stp_get_height(img.v), img.height)); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: margins l %d r %d t %d b %d row width %d\n", - img.left_margin, img.right_margin, - img.top_margin, img.bottom_margin, - img.row_width)); - -/* - * Fix up the duplex/tumble settings stored in the "x_" parameters - * If Duplex is "true" then look at "Tumble". If duplex is not "true" or "false" - * then just take it (e.g. Duplex=DuplexNoTumble). - */ - STP_DEBUG(fprintf(stderr, "ijsgutenprint: x_Duplex=%s\n", safe_get_string_parameter(img.v, "x_Duplex"))); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: x_Tumble=%s\n", safe_get_string_parameter(img.v, "x_Tumble"))); - - if (stp_get_string_parameter(img.v, "x_Duplex")) - { - if (strcmp(stp_get_string_parameter(img.v, "x_Duplex"), "false") == 0) - stp_set_string_parameter(img.v, "Duplex", "None"); - else if (strcmp(stp_get_string_parameter(img.v, "x_Duplex"), "true") == 0) - { - if (stp_get_string_parameter(img.v, "x_Tumble")) - { - if (strcmp(stp_get_string_parameter(img.v, "x_Tumble"), "false") == 0) - stp_set_string_parameter(img.v, "Duplex", "DuplexNoTumble"); - else - stp_set_string_parameter(img.v, "Duplex", "DuplexTumble"); - } - else /* Tumble missing, assume false */ - stp_set_string_parameter(img.v, "Duplex", "DuplexNoTumble"); - } - else /* Not true or false */ - stp_set_string_parameter(img.v, "Duplex", stp_get_string_parameter(img.v, "x_Duplex")); - } - -/* can I destroy the unused parameters? */ - - STP_DEBUG(fprintf(stderr, "ijsgutenprint: Duplex=%s\n", safe_get_string_parameter(img.v, "Duplex"))); - - validate_options(&si); - stp_dbg("ijsgutenprint: about to print", img.v); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: w %d h %d l %d t %d\n", - stp_get_width(img.v), stp_get_height(img.v), - stp_get_left(img.v), stp_get_top(img.v))); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: start printing page %d\n", page)); - print_messages_as_errors = 1; - if (!version_is_ok) - { - fprintf(stderr, VERSION_MISMATCH, version_id, - gutenprint_ppd_version, version_id, gutenprint_ppd_version); - status = IJS_ERANGE; - break; - } - else if (stp_verify(img.v)) - { - page_bytes_printed = 0; - if (page == 0) - stp_start_job(img.v, &si); - stp_print(img.v, &si); - STP_DEBUG(fprintf(stderr, "ijsgutenprint: printed page %d, %.0f bytes\n", - page, page_bytes_printed)); - old_v = stp_vars_create_copy(img.v); - } - else - { - fprintf(stderr, "ERROR: ijsgutenprint: Bad parameters; cannot continue!\n"); - status = IJS_ERANGE; - break; - } - if (job_aborted) - { - STP_DEBUG(fprintf(stderr, "ijsgutenprint: aborting job\n")); - status = 1; - } - else - { - STP_DEBUG(fprintf(stderr, "ijsgutenprint: done printing page %d\n", page)); - - while (img.bytes_left) - { - status = image_next_row(&img); - if (status) - { - fprintf(stderr, "ERROR: ijsgutenprint: Get next row failed at %.0f\n", - img.bytes_left); - break; - } - } - - image_finish(&img); - status = ijs_server_get_page_header(img.ctx, &ph); - } - if (status > 0) - { - fprintf(stderr, "INFO: ijsgutenprint Ready to print.\n"); - stp_end_job(old_v, &si); - } - else - { - stp_vars_destroy(old_v); - page++; - } - } - if (f) - { - fclose(f); - } - - if (status > 0) - status = 0; /* normal exit */ - - ijs_server_done(img.ctx); - - STP_DEBUG(fprintf (stderr, "ijsgutenprint: printed total %.0f bytes\n", - total_bytes_printed)); - STP_DEBUG(fprintf (stderr, "ijsgutenprint: server exiting with status %d\n", status)); - return status; -} diff --git a/src/gimp2/Makefile.am b/src/gimp2/Makefile.am index 1b4b408..8d749e4 100644 --- a/src/gimp2/Makefile.am +++ b/src/gimp2/Makefile.am @@ -1,4 +1,3 @@ -## $Id: Makefile.am,v 1.8 2012/06/25 22:22:04 rlk Exp $ ## Copyright (C) 2000 Roger Leigh ## ## This program is free software; you can redistribute it and/or modify diff --git a/src/gimp2/Makefile.in b/src/gimp2/Makefile.in index 96021ee..e91ae1d 100644 --- a/src/gimp2/Makefile.in +++ b/src/gimp2/Makefile.in @@ -84,26 +84,24 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(top_srcdir)/scripts/global.mk $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/scripts/mkinstalldirs \ - $(top_srcdir)/scripts/depcomp + $(srcdir)/Makefile.am $(top_srcdir)/scripts/depcomp @BUILD_GIMP2_AS_GUTENPRINT_FALSE@@BUILD_GIMP2_TRUE@gimp2_plug_in_PROGRAMS = print$(EXEEXT) @BUILD_GIMP2_AS_GUTENPRINT_TRUE@@BUILD_GIMP2_TRUE@gimp2_plug_in_PROGRAMS = gutenprint$(EXEEXT) subdir = src/gimp2 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/isc-posix.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stp.m4 \ - $(top_srcdir)/m4/stp_cups.m4 $(top_srcdir)/m4/stp_gimp.m4 \ - $(top_srcdir)/m4/stp_option.m4 $(top_srcdir)/m4/stp_release.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/stp.m4 $(top_srcdir)/m4/stp_cups.m4 \ + $(top_srcdir)/m4/stp_gimp.m4 $(top_srcdir)/m4/stp_option.m4 \ + $(top_srcdir)/m4/stp_release.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/scripts/mkinstalldirs +mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = @@ -224,9 +222,6 @@ ENABLE_STATIC = @ENABLE_STATIC@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FIND = @FIND@ -FOOMATIC_CONFIGURE = @FOOMATIC_CONFIGURE@ -FOOMATIC_KITLOAD = @FOOMATIC_KITLOAD@ -FOOMATIC_PPDFILE = @FOOMATIC_PPDFILE@ GENPPD_LIBS = @GENPPD_LIBS@ GIMP2_CFLAGS = @GIMP2_CFLAGS@ GIMP2_LIBS = @GIMP2_LIBS@ @@ -259,9 +254,6 @@ GUTENPRINT_MICRO_VERSION = @GUTENPRINT_MICRO_VERSION@ GUTENPRINT_MINOR_VERSION = @GUTENPRINT_MINOR_VERSION@ GUTENPRINT_RELEASE_VERSION = @GUTENPRINT_RELEASE_VERSION@ GUTENPRINT_VERSION = @GUTENPRINT_VERSION@ -IJS_CFLAGS = @IJS_CFLAGS@ -IJS_CONFIG = @IJS_CONFIG@ -IJS_LIBS = @IJS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -282,6 +274,7 @@ LIBREADLINE_DEPS = @LIBREADLINE_DEPS@ LIBS = $(INTLLIBS) @LIBS@ LIBTOOL = @LIBTOOL@ LIBTOOL_DEPS = @LIBTOOL_DEPS@ +LIBUSB_BACKEND_LIBDEPS = @LIBUSB_BACKEND_LIBDEPS@ LIBUSB_CFLAGS = @LIBUSB_CFLAGS@ LIBUSB_LIBS = @LIBUSB_LIBS@ LIPO = @LIPO@ diff --git a/src/gimp2/print-gutenprint.c b/src/gimp2/print-gutenprint.c index 276a7df..d38f086 100644 --- a/src/gimp2/print-gutenprint.c +++ b/src/gimp2/print-gutenprint.c @@ -1,5 +1,4 @@ /* - * "$Id: print-gutenprint.c,v 1.3 2014/01/04 00:31:37 rlk Exp $" * * Print plug-in for the GIMP. * diff --git a/src/gimp2/print-image-gimp.c b/src/gimp2/print-image-gimp.c index 8227409..7b32bc8 100644 --- a/src/gimp2/print-image-gimp.c +++ b/src/gimp2/print-image-gimp.c @@ -1,6 +1,4 @@ /* - * "$Id: print-image-gimp.c,v 1.2 2004/06/22 18:52:15 rleigh Exp $" - * * Print plug-in for the GIMP. * * Copyright 1997-2000 Michael Sweet (mike@easysw.com) and @@ -441,7 +439,3 @@ Image_get_appname(stp_image_t *image) " for GIMP"; return pluginname; } - -/* - * End of "$Id: print-image-gimp.c,v 1.2 2004/06/22 18:52:15 rleigh Exp $". - */ diff --git a/src/gimp2/print-intl.h b/src/gimp2/print-intl.h index 634f23a..d129b85 100644 --- a/src/gimp2/print-intl.h +++ b/src/gimp2/print-intl.h @@ -1,5 +1,4 @@ /* - * "$Id: print-intl.h,v 1.3 2004/09/17 18:38:13 rleigh Exp $" * * I18N header file for the GIMP2 Print plugin. * diff --git a/src/gimp2/print-print.c b/src/gimp2/print-print.c index 5895264..2f5623b 100644 --- a/src/gimp2/print-print.c +++ b/src/gimp2/print-print.c @@ -1,5 +1,4 @@ /* - * "$Id: print-print.c,v 1.1 2006/07/04 02:57:59 rlk Exp $" * * Print plug-in for the GIMP. * diff --git a/src/gimp2/print.c b/src/gimp2/print.c index e8131f7..afb50cd 100644 --- a/src/gimp2/print.c +++ b/src/gimp2/print.c @@ -1,5 +1,4 @@ /* - * "$Id: print.c,v 1.10 2014/01/04 00:31:37 rlk Exp $" * * Print plug-in for the GIMP. * diff --git a/src/gimp2/print_gimp.h b/src/gimp2/print_gimp.h index 7fc0b51..e9a0ca6 100644 --- a/src/gimp2/print_gimp.h +++ b/src/gimp2/print_gimp.h @@ -1,5 +1,4 @@ /* - * "$Id: print_gimp.h,v 1.6 2014/01/04 00:31:37 rlk Exp $" * * Print plug-in for the GIMP. * diff --git a/src/gutenprintui2/Makefile.am b/src/gutenprintui2/Makefile.am index 7a9fe7b..bedd468 100644 --- a/src/gutenprintui2/Makefile.am +++ b/src/gutenprintui2/Makefile.am @@ -1,4 +1,3 @@ -## $Id: Makefile.am,v 1.8 2008/10/24 00:37:14 rleigh Exp $ ## Copyright (C) 2000 Roger Leigh ## ## This program is free software; you can redistribute it and/or modify diff --git a/src/gutenprintui2/Makefile.in b/src/gutenprintui2/Makefile.in index 8b43de1..50b86f8 100644 --- a/src/gutenprintui2/Makefile.in +++ b/src/gutenprintui2/Makefile.in @@ -85,25 +85,24 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(top_srcdir)/scripts/global.mk $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/scripts/mkinstalldirs \ - $(srcdir)/gutenprintui2.pc.in printrcy.h printrcy.c printrcl.c \ - $(top_srcdir)/scripts/depcomp $(top_srcdir)/scripts/ylwrap + $(srcdir)/Makefile.am $(srcdir)/gutenprintui2.pc.in printrcy.h \ + printrcy.c printrcl.c $(top_srcdir)/scripts/depcomp \ + $(top_srcdir)/scripts/ylwrap subdir = src/gutenprintui2 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/isc-posix.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stp.m4 \ - $(top_srcdir)/m4/stp_cups.m4 $(top_srcdir)/m4/stp_gimp.m4 \ - $(top_srcdir)/m4/stp_option.m4 $(top_srcdir)/m4/stp_release.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/stp.m4 $(top_srcdir)/m4/stp_cups.m4 \ + $(top_srcdir)/m4/stp_gimp.m4 $(top_srcdir)/m4/stp_option.m4 \ + $(top_srcdir)/m4/stp_release.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/scripts/mkinstalldirs +mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = gutenprintui2.pc CONFIG_CLEAN_VPATH_FILES = @@ -279,9 +278,6 @@ ENABLE_STATIC = @ENABLE_STATIC@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FIND = @FIND@ -FOOMATIC_CONFIGURE = @FOOMATIC_CONFIGURE@ -FOOMATIC_KITLOAD = @FOOMATIC_KITLOAD@ -FOOMATIC_PPDFILE = @FOOMATIC_PPDFILE@ GENPPD_LIBS = @GENPPD_LIBS@ GIMP2_CFLAGS = @GIMP2_CFLAGS@ GIMP2_LIBS = @GIMP2_LIBS@ @@ -314,9 +310,6 @@ GUTENPRINT_MICRO_VERSION = @GUTENPRINT_MICRO_VERSION@ GUTENPRINT_MINOR_VERSION = @GUTENPRINT_MINOR_VERSION@ GUTENPRINT_RELEASE_VERSION = @GUTENPRINT_RELEASE_VERSION@ GUTENPRINT_VERSION = @GUTENPRINT_VERSION@ -IJS_CFLAGS = @IJS_CFLAGS@ -IJS_CONFIG = @IJS_CONFIG@ -IJS_LIBS = @IJS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -337,6 +330,7 @@ LIBREADLINE_DEPS = @LIBREADLINE_DEPS@ LIBS = $(INTLLIBS) @LIBS@ LIBTOOL = @LIBTOOL@ LIBTOOL_DEPS = @LIBTOOL_DEPS@ +LIBUSB_BACKEND_LIBDEPS = @LIBUSB_BACKEND_LIBDEPS@ LIBUSB_CFLAGS = @LIBUSB_CFLAGS@ LIBUSB_LIBS = @LIBUSB_LIBS@ LIPO = @LIPO@ diff --git a/src/gutenprintui2/gutenprintui-internal.h b/src/gutenprintui2/gutenprintui-internal.h index 9a4530e..15970b8 100644 --- a/src/gutenprintui2/gutenprintui-internal.h +++ b/src/gutenprintui2/gutenprintui-internal.h @@ -1,5 +1,4 @@ /* - * "$Id: gutenprintui-internal.h,v 1.6 2014/01/04 00:31:37 rlk Exp $" * * Print plug-in for the GIMP. * diff --git a/src/gutenprintui2/panel.c b/src/gutenprintui2/panel.c index 93812e2..1f19d01 100644 --- a/src/gutenprintui2/panel.c +++ b/src/gutenprintui2/panel.c @@ -1,5 +1,4 @@ /* - * "$Id: panel.c,v 1.23 2015/09/09 23:57:32 speachy Exp $" * * Main window code for Print plug-in for the GIMP. * diff --git a/src/gutenprintui2/plist.c b/src/gutenprintui2/plist.c index 7d70f4a..577d549 100644 --- a/src/gutenprintui2/plist.c +++ b/src/gutenprintui2/plist.c @@ -1,6 +1,4 @@ /* - * "$Id: plist.c,v 1.20 2014/01/04 00:31:37 rlk Exp $" - * * Print plug-in for the GIMP. * * Copyright 1997-2000 Michael Sweet (mike@easysw.com) and @@ -370,6 +368,7 @@ stpui_printer_initialize(stpui_plist_t *printer) stp_set_errdata(printer->v, stderr); stpui_plist_set_copy_count(printer, 1); stp_set_string_parameter(printer->v, "InputImageType", image_type); + stp_set_string_parameter(printer->v, "JobMode", "Page"); if (image_raw_channels) { (void) sprintf(tmp, "%d", image_raw_channels); @@ -1825,7 +1824,3 @@ stpui_print(const stpui_plist_t *printer, stpui_image_t *image) return 0; } - -/* - * End of "$Id: plist.c,v 1.20 2014/01/04 00:31:37 rlk Exp $". - */ diff --git a/src/gutenprintui2/print-image-thumbnail.c b/src/gutenprintui2/print-image-thumbnail.c index 51fd136..adca256 100644 --- a/src/gutenprintui2/print-image-thumbnail.c +++ b/src/gutenprintui2/print-image-thumbnail.c @@ -1,6 +1,4 @@ /* - * "$Id: print-image-thumbnail.c,v 1.1 2004/09/17 18:38:14 rleigh Exp $" - * * Print plug-in for the GIMP. * * Copyright 1997-2000 Michael Sweet (mike@easysw.com) and @@ -124,7 +122,3 @@ Thumbnail_get_appname(stp_image_t *image) static char pluginname[] = "Thumbnail V" VERSION " - " RELEASE_DATE; return pluginname; } - -/* - * End of "$Id: print-image-thumbnail.c,v 1.1 2004/09/17 18:38:14 rleigh Exp $". - */ diff --git a/src/gutenprintui2/printrc.h b/src/gutenprintui2/printrc.h index 2ff4220..b7d89fc 100644 --- a/src/gutenprintui2/printrc.h +++ b/src/gutenprintui2/printrc.h @@ -1,5 +1,4 @@ /* - * "$Id: printrc.h,v 1.1 2004/09/17 18:38:14 rleigh Exp $" * * Print plug-in for the GIMP. * diff --git a/src/gutenprintui2/printrcl.c b/src/gutenprintui2/printrcl.c index ab63fe1..61d3863 100644 --- a/src/gutenprintui2/printrcl.c +++ b/src/gutenprintui2/printrcl.c @@ -718,7 +718,6 @@ int yy_flex_debug = 0; char *yytext; #line 1 "printrcl.l" /* -*-Mode: C-*- - * "$Id: printrcl.l,v 1.3 2014/01/04 00:31:37 rlk Exp $" * * printrc parser * @@ -738,7 +737,7 @@ char *yytext; * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#line 24 "printrcl.l" +#line 23 "printrcl.l" #ifdef HAVE_CONFIG_H #include <config.h> @@ -781,7 +780,7 @@ q_strdup(const char *s) return g_strndup(s + 1, strlen(s) - 2); } -#line 785 "printrcl.c" +#line 784 "printrcl.c" #define INITIAL 0 @@ -963,10 +962,10 @@ YY_DECL register char *yy_cp, *yy_bp; register int yy_act; -#line 79 "printrcl.l" +#line 78 "printrcl.l" -#line 970 "printrcl.c" +#line 969 "printrcl.c" if ( !(yy_init) ) { @@ -1051,208 +1050,208 @@ do_action: /* This label is used only to access EOF actions. */ case 1: YY_RULE_SETUP -#line 81 "printrcl.l" +#line 80 "printrcl.l" DBG(CURRENT_PRINTER); return CURRENT_PRINTER; YY_BREAK case 2: YY_RULE_SETUP -#line 82 "printrcl.l" +#line 81 "printrcl.l" DBG(SHOW_ALL_PAPER_SIZES); return SHOW_ALL_PAPER_SIZES; YY_BREAK case 3: YY_RULE_SETUP -#line 83 "printrcl.l" +#line 82 "printrcl.l" DBG(PRINTER); return PRINTER; YY_BREAK case 4: YY_RULE_SETUP -#line 84 "printrcl.l" +#line 83 "printrcl.l" DBG(DESTINATION); return DESTINATION; YY_BREAK case 5: YY_RULE_SETUP -#line 85 "printrcl.l" +#line 84 "printrcl.l" DBG(SCALING); return SCALING; YY_BREAK case 6: YY_RULE_SETUP -#line 86 "printrcl.l" +#line 85 "printrcl.l" DBG(ORIENTATION); return ORIENTATION; YY_BREAK case 7: YY_RULE_SETUP -#line 87 "printrcl.l" +#line 86 "printrcl.l" DBG(AUTOSIZE_ROLL_PAPER); return AUTOSIZE_ROLL_PAPER; YY_BREAK case 8: YY_RULE_SETUP -#line 88 "printrcl.l" +#line 87 "printrcl.l" DBG(UNIT); return UNIT; YY_BREAK case 9: YY_RULE_SETUP -#line 89 "printrcl.l" +#line 88 "printrcl.l" DBG(DRIVER); return DRIVER; YY_BREAK case 10: YY_RULE_SETUP -#line 90 "printrcl.l" +#line 89 "printrcl.l" DBG(LEFT); return LEFT; YY_BREAK case 11: YY_RULE_SETUP -#line 91 "printrcl.l" +#line 90 "printrcl.l" DBG(TOP); return TOP; YY_BREAK case 12: YY_RULE_SETUP -#line 92 "printrcl.l" +#line 91 "printrcl.l" DBG(CUSTOM_PAGE_WIDTH); return CUSTOM_PAGE_WIDTH; YY_BREAK case 13: YY_RULE_SETUP -#line 93 "printrcl.l" +#line 92 "printrcl.l" DBG(CUSTOM_PAGE_HEIGHT); return CUSTOM_PAGE_HEIGHT; YY_BREAK case 14: YY_RULE_SETUP -#line 94 "printrcl.l" +#line 93 "printrcl.l" DBG(OUTPUT_TYPE); return OUTPUT_TYPE; YY_BREAK case 15: YY_RULE_SETUP -#line 95 "printrcl.l" +#line 94 "printrcl.l" DBG(PARAMETER); return PARAMETER; YY_BREAK case 16: YY_RULE_SETUP -#line 96 "printrcl.l" +#line 95 "printrcl.l" DBG(QUEUE_NAME); return QUEUE_NAME; YY_BREAK case 17: YY_RULE_SETUP -#line 97 "printrcl.l" +#line 96 "printrcl.l" DBG(OUTPUT_FILENAME); return OUTPUT_FILENAME; YY_BREAK case 18: YY_RULE_SETUP -#line 98 "printrcl.l" +#line 97 "printrcl.l" DBG(EXTRA_PRINTER_OPTIONS); return EXTRA_PRINTER_OPTIONS; YY_BREAK case 19: YY_RULE_SETUP -#line 99 "printrcl.l" +#line 98 "printrcl.l" DBG(CUSTOM_COMMAND); return CUSTOM_COMMAND; YY_BREAK case 20: YY_RULE_SETUP -#line 100 "printrcl.l" +#line 99 "printrcl.l" DBG(COMMAND_TYPE); return COMMAND_TYPE; YY_BREAK case 21: YY_RULE_SETUP -#line 101 "printrcl.l" +#line 100 "printrcl.l" DBG(GLOBAL_SETTINGS); return GLOBAL_SETTINGS; YY_BREAK case 22: YY_RULE_SETUP -#line 102 "printrcl.l" +#line 101 "printrcl.l" DBG(END_GLOBAL_SETTINGS); return END_GLOBAL_SETTINGS; YY_BREAK case 23: YY_RULE_SETUP -#line 103 "printrcl.l" +#line 102 "printrcl.l" DBG(GLOBAL); return GLOBAL; YY_BREAK case 24: YY_RULE_SETUP -#line 105 "printrcl.l" +#line 104 "printrcl.l" DBG(pINT); return pINT; YY_BREAK case 25: YY_RULE_SETUP -#line 106 "printrcl.l" +#line 105 "printrcl.l" DBG(pSTRING_LIST); return pSTRING_LIST; YY_BREAK case 26: YY_RULE_SETUP -#line 107 "printrcl.l" +#line 106 "printrcl.l" DBG(pFILE); return pFILE; YY_BREAK case 27: YY_RULE_SETUP -#line 108 "printrcl.l" +#line 107 "printrcl.l" DBG(pDOUBLE); return pDOUBLE; YY_BREAK case 28: YY_RULE_SETUP -#line 109 "printrcl.l" +#line 108 "printrcl.l" DBG(pDIMENSION); return pDIMENSION; YY_BREAK case 29: YY_RULE_SETUP -#line 110 "printrcl.l" +#line 109 "printrcl.l" DBG(pBOOLEAN); return pBOOLEAN; YY_BREAK case 30: YY_RULE_SETUP -#line 111 "printrcl.l" +#line 110 "printrcl.l" DBG(pCURVE); return pCURVE; YY_BREAK case 31: YY_RULE_SETUP -#line 113 "printrcl.l" +#line 112 "printrcl.l" yylval.ival = atoi(yytext); DBG(tINT); return tINT; YY_BREAK case 32: YY_RULE_SETUP -#line 114 "printrcl.l" +#line 113 "printrcl.l" yylval.dval = strtod(yytext, NULL); DBG(tDOUBLE); return tDOUBLE; YY_BREAK case 33: /* rule 33 can match eol */ YY_RULE_SETUP -#line 115 "printrcl.l" +#line 114 "printrcl.l" yylval.sval = q_strdup(yytext); DBG(tSTRING); return tSTRING; YY_BREAK case 34: YY_RULE_SETUP -#line 116 "printrcl.l" +#line 115 "printrcl.l" yylval.sval = g_strdup(yytext); DBG(tBOOLEAN); return tBOOLEAN; YY_BREAK case 35: YY_RULE_SETUP -#line 117 "printrcl.l" +#line 116 "printrcl.l" yylval.sval = g_strdup(yytext); DBG(tWORD); return tWORD; YY_BREAK case 36: /* rule 36 can match eol */ YY_RULE_SETUP -#line 118 "printrcl.l" +#line 117 "printrcl.l" DBG(PRINTRC_HDR); return PRINTRC_HDR; YY_BREAK case 37: YY_RULE_SETUP -#line 119 "printrcl.l" +#line 118 "printrcl.l" DBG(whitespace1); /* Skip blanks/tabs */ YY_BREAK case 38: YY_RULE_SETUP -#line 120 "printrcl.l" +#line 119 "printrcl.l" DBG(comment1); /* Skip comments */ YY_BREAK case 39: /* rule 39 can match eol */ YY_RULE_SETUP -#line 121 "printrcl.l" +#line 120 "printrcl.l" DBG(newline); mylineno++; YY_BREAK case 40: YY_RULE_SETUP -#line 122 "printrcl.l" +#line 121 "printrcl.l" ECHO; YY_BREAK -#line 1256 "printrcl.c" +#line 1255 "printrcl.c" case YY_STATE_EOF(INITIAL): yyterminate(); @@ -2246,4 +2245,4 @@ void yyfree (void * ptr ) #define YYTABLES_NAME "yytables" -#line 122 "printrcl.l" +#line 121 "printrcl.l" diff --git a/src/gutenprintui2/printrcl.l b/src/gutenprintui2/printrcl.l index a013e1f..931f63d 100644 --- a/src/gutenprintui2/printrcl.l +++ b/src/gutenprintui2/printrcl.l @@ -1,5 +1,4 @@ /* -*-Mode: C-*- - * "$Id: printrcl.l,v 1.3 2014/01/04 00:31:37 rlk Exp $" * * printrc parser * diff --git a/src/gutenprintui2/printrcy.c b/src/gutenprintui2/printrcy.c index b455d3d..9639cbe 100644 --- a/src/gutenprintui2/printrcy.c +++ b/src/gutenprintui2/printrcy.c @@ -1,10 +1,8 @@ +/* A Bison parser, made by GNU Bison 2.7. */ -/* A Bison parser, made by GNU Bison 2.4.1. */ - -/* Skeleton implementation for Bison's Yacc-like parsers in C +/* Bison implementation for Yacc-like parsers in C - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 - Free Software Foundation, Inc. + Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -46,7 +44,7 @@ #define YYBISON 1 /* Bison version. */ -#define YYBISON_VERSION "2.4.1" +#define YYBISON_VERSION "2.7" /* Skeleton name. */ #define YYSKELETON_NAME "yacc.c" @@ -60,15 +58,12 @@ /* Pull parsers. */ #define YYPULL 1 -/* Using locations. */ -#define YYLSP_NEEDED 0 /* Copy the first part of user declarations. */ - -/* Line 189 of yacc.c */ -#line 23 "printrcy.y" +/* Line 371 of yacc.c */ +#line 22 "printrcy.y" #ifdef HAVE_CONFIG_H @@ -101,14 +96,16 @@ static int yyerror( const char *s ) static stpui_plist_t *current_printer = NULL; +/* Line 371 of yacc.c */ +#line 101 "printrcy.c" -/* Line 189 of yacc.c */ -#line 107 "printrcy.c" - -/* Enabling traces. */ -#ifndef YYDEBUG -# define YYDEBUG 0 -#endif +# ifndef YY_NULL +# if defined __cplusplus && 201103L <= __cplusplus +# define YY_NULL nullptr +# else +# define YY_NULL 0 +# endif +# endif /* Enabling verbose error messages. */ #ifdef YYERROR_VERBOSE @@ -118,11 +115,17 @@ static stpui_plist_t *current_printer = NULL; # define YYERROR_VERBOSE 0 #endif -/* Enabling the token table. */ -#ifndef YYTOKEN_TABLE -# define YYTOKEN_TABLE 0 +/* In a future release of Bison, this section will be replaced + by #include "y.tab.h". */ +#ifndef YY_YY_PRINTRCY_H_INCLUDED +# define YY_YY_PRINTRCY_H_INCLUDED +/* Enabling traces. */ +#ifndef YYDEBUG +# define YYDEBUG 0 +#endif +#if YYDEBUG +extern int yydebug; #endif - /* Tokens. */ #ifndef YYTOKENTYPE @@ -212,19 +215,34 @@ static stpui_plist_t *current_printer = NULL; - #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 #endif +extern YYSTYPE yylval; -/* Copy the second part of user declarations. */ +#ifdef YYPARSE_PARAM +#if defined __STDC__ || defined __cplusplus +int yyparse (void *YYPARSE_PARAM); +#else +int yyparse (); +#endif +#else /* ! YYPARSE_PARAM */ +#if defined __STDC__ || defined __cplusplus +int yyparse (void); +#else +int yyparse (); +#endif +#endif /* ! YYPARSE_PARAM */ +#endif /* !YY_YY_PRINTRCY_H_INCLUDED */ -/* Line 264 of yacc.c */ -#line 228 "printrcy.c" +/* Copy the second part of user declarations. */ + +/* Line 390 of yacc.c */ +#line 246 "printrcy.c" #ifdef short # undef short @@ -274,27 +292,27 @@ typedef short int yytype_int16; #define YYSIZE_MAXIMUM ((YYSIZE_T) -1) #ifndef YY_ -# if YYENABLE_NLS +# if defined YYENABLE_NLS && YYENABLE_NLS # if ENABLE_NLS # include <libintl.h> /* INFRINGES ON USER NAME SPACE */ -# define YY_(msgid) dgettext ("bison-runtime", msgid) +# define YY_(Msgid) dgettext ("bison-runtime", Msgid) # endif # endif # ifndef YY_ -# define YY_(msgid) msgid +# define YY_(Msgid) Msgid # endif #endif /* Suppress unused-variable warnings by "using" E. */ #if ! defined lint || defined __GNUC__ -# define YYUSE(e) ((void) (e)) +# define YYUSE(E) ((void) (E)) #else -# define YYUSE(e) /* empty */ +# define YYUSE(E) /* empty */ #endif /* Identity function, used to suppress warnings about constant conditions. */ #ifndef lint -# define YYID(n) (n) +# define YYID(N) (N) #else #if (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) @@ -327,11 +345,12 @@ YYID (yyi) # define alloca _alloca # else # define YYSTACK_ALLOC alloca -# if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ +# if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ -# ifndef _STDLIB_H -# define _STDLIB_H 1 + /* Use EXIT_SUCCESS as a witness for stdlib.h. */ +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 # endif # endif # endif @@ -354,24 +373,24 @@ YYID (yyi) # ifndef YYSTACK_ALLOC_MAXIMUM # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM # endif -# if (defined __cplusplus && ! defined _STDLIB_H \ +# if (defined __cplusplus && ! defined EXIT_SUCCESS \ && ! ((defined YYMALLOC || defined malloc) \ && (defined YYFREE || defined free))) # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ -# ifndef _STDLIB_H -# define _STDLIB_H 1 +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 # endif # endif # ifndef YYMALLOC # define YYMALLOC malloc -# if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ +# if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ # endif # endif # ifndef YYFREE # define YYFREE free -# if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ +# if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) void free (void *); /* INFRINGES ON USER NAME SPACE */ # endif @@ -400,23 +419,7 @@ union yyalloc ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ + YYSTACK_GAP_MAXIMUM) -/* Copy COUNT objects from FROM to TO. The source and destination do - not overlap. */ -# ifndef YYCOPY -# if defined __GNUC__ && 1 < __GNUC__ -# define YYCOPY(To, From, Count) \ - __builtin_memcpy (To, From, (Count) * sizeof (*(From))) -# else -# define YYCOPY(To, From, Count) \ - do \ - { \ - YYSIZE_T yyi; \ - for (yyi = 0; yyi < (Count); yyi++) \ - (To)[yyi] = (From)[yyi]; \ - } \ - while (YYID (0)) -# endif -# endif +# define YYCOPY_NEEDED 1 /* Relocate STACK from its old location to the new one. The local variables YYSIZE and YYSTACKSIZE give the old and new number of @@ -436,6 +439,26 @@ union yyalloc #endif +#if defined YYCOPY_NEEDED && YYCOPY_NEEDED +/* Copy COUNT objects from SRC to DST. The source and destination do + not overlap. */ +# ifndef YYCOPY +# if defined __GNUC__ && 1 < __GNUC__ +# define YYCOPY(Dst, Src, Count) \ + __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src))) +# else +# define YYCOPY(Dst, Src, Count) \ + do \ + { \ + YYSIZE_T yyi; \ + for (yyi = 0; yyi < (Count); yyi++) \ + (Dst)[yyi] = (Src)[yyi]; \ + } \ + while (YYID (0)) +# endif +# endif +#endif /* !YYCOPY_NEEDED */ + /* YYFINAL -- State number of the termination state. */ #define YYFINAL 10 /* YYLAST -- Last index in YYTABLE. */ @@ -535,18 +558,18 @@ static const yytype_int8 yyrhs[] = /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 100, 100, 111, 118, 128, 138, 148, 158, 165, - 172, 179, 186, 193, 200, 207, 228, 235, 242, 245, - 262, 280, 298, 315, 332, 353, 376, 376, 376, 376, - 377, 377, 377, 380, 383, 383, 386, 386, 386, 386, - 387, 387, 387, 387, 387, 388, 388, 388, 388, 389, - 389, 392, 392, 395, 398, 398, 401, 405, 415, 415, - 418, 421, 432, 432, 435, 435, 438, 441, 441, 441, - 444 + 0, 99, 99, 110, 117, 127, 137, 147, 157, 164, + 171, 178, 185, 192, 199, 206, 227, 234, 241, 244, + 261, 279, 297, 314, 331, 352, 375, 375, 375, 375, + 376, 376, 376, 379, 382, 382, 385, 385, 385, 385, + 386, 386, 386, 386, 386, 387, 387, 387, 387, 388, + 388, 391, 391, 394, 397, 397, 400, 404, 414, 414, + 417, 420, 431, 431, 434, 434, 437, 440, 440, 440, + 443 }; #endif -#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE +#if YYDEBUG || YYERROR_VERBOSE || 0 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. First, the terminals, then, starting at YYNTOKENS, nonterminals. */ static const char *const yytname[] = @@ -569,7 +592,7 @@ static const char *const yytname[] = "Standard_Value", "Standard_Values", "A_Printer", "Printers", "Current_Printer", "Show_All_Paper_Sizes", "Global", "Old_Globals", "New_Global_Setting", "Global_Setting", "Global_Settings", - "Global_Subblock", "Global_Block", "Thing", 0 + "Global_Subblock", "Global_Block", "Thing", YY_NULL }; #endif @@ -612,8 +635,8 @@ static const yytype_uint8 yyr2[] = 3 }; -/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state - STATE-NUM when YYTABLE doesn't specify something else to do. Zero +/* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM. + Performed when YYTABLE doesn't specify something else to do. Zero means the default is an error. */ static const yytype_uint8 yydefact[] = { @@ -672,8 +695,7 @@ static const yytype_int8 yypgoto[] = /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which - number is the opposite. If zero, do what YYDEFACT says. - If YYTABLE_NINF, syntax error. */ + number is the opposite. If YYTABLE_NINF, syntax error. */ #define YYTABLE_NINF -1 static const yytype_uint8 yytable[] = { @@ -687,6 +709,12 @@ static const yytype_uint8 yytable[] = 108, 109, 110, 111, 113, 112 }; +#define yypact_value_is_default(Yystate) \ + (!!((Yystate) == (-26))) + +#define yytable_value_is_error(Yytable_value) \ + YYID (0) + static const yytype_int8 yycheck[] = { 4, 8, 24, 10, 11, 9, 0, 7, 10, 34, @@ -729,78 +757,50 @@ static const yytype_uint8 yystos[] = /* Like YYERROR except do call yyerror. This remains here temporarily to ease the transition to the new meaning of YYERROR, for GCC. - Once GCC version 2 has supplanted version 1, this can go. */ + Once GCC version 2 has supplanted version 1, this can go. However, + YYFAIL appears to be in use. Nevertheless, it is formally deprecated + in Bison 2.4.2's NEWS entry, where a plan to phase it out is + discussed. */ #define YYFAIL goto yyerrlab +#if defined YYFAIL + /* This is here to suppress warnings from the GCC cpp's + -Wunused-macros. Normally we don't worry about that warning, but + some users do, and we want to make it easy for users to remove + YYFAIL uses, which will produce warnings from Bison 2.5. */ +#endif #define YYRECOVERING() (!!yyerrstatus) -#define YYBACKUP(Token, Value) \ -do \ - if (yychar == YYEMPTY && yylen == 1) \ - { \ - yychar = (Token); \ - yylval = (Value); \ - yytoken = YYTRANSLATE (yychar); \ - YYPOPSTACK (1); \ - goto yybackup; \ - } \ - else \ - { \ +#define YYBACKUP(Token, Value) \ +do \ + if (yychar == YYEMPTY) \ + { \ + yychar = (Token); \ + yylval = (Value); \ + YYPOPSTACK (yylen); \ + yystate = *yyssp; \ + goto yybackup; \ + } \ + else \ + { \ yyerror (YY_("syntax error: cannot back up")); \ YYERROR; \ } \ while (YYID (0)) - +/* Error token number */ #define YYTERROR 1 #define YYERRCODE 256 -/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N]. - If N is 0, then set CURRENT to the empty location which ends - the previous symbol: RHS[0] (always defined). */ - -#define YYRHSLOC(Rhs, K) ((Rhs)[K]) -#ifndef YYLLOC_DEFAULT -# define YYLLOC_DEFAULT(Current, Rhs, N) \ - do \ - if (YYID (N)) \ - { \ - (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \ - (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \ - (Current).last_line = YYRHSLOC (Rhs, N).last_line; \ - (Current).last_column = YYRHSLOC (Rhs, N).last_column; \ - } \ - else \ - { \ - (Current).first_line = (Current).last_line = \ - YYRHSLOC (Rhs, 0).last_line; \ - (Current).first_column = (Current).last_column = \ - YYRHSLOC (Rhs, 0).last_column; \ - } \ - while (YYID (0)) -#endif - - -/* YY_LOCATION_PRINT -- Print the location on the stream. - This macro was not mandated originally: define only if we know - we won't break user code: when these are the locations we know. */ - +/* This macro is provided for backward compatibility. */ #ifndef YY_LOCATION_PRINT -# if YYLTYPE_IS_TRIVIAL -# define YY_LOCATION_PRINT(File, Loc) \ - fprintf (File, "%d.%d-%d.%d", \ - (Loc).first_line, (Loc).first_column, \ - (Loc).last_line, (Loc).last_column) -# else -# define YY_LOCATION_PRINT(File, Loc) ((void) 0) -# endif +# define YY_LOCATION_PRINT(File, Loc) ((void) 0) #endif /* YYLEX -- calling `yylex' with the right arguments. */ - #ifdef YYLEX_PARAM # define YYLEX yylex (YYLEX_PARAM) #else @@ -850,6 +850,8 @@ yy_symbol_value_print (yyoutput, yytype, yyvaluep) YYSTYPE const * const yyvaluep; #endif { + FILE *yyo = yyoutput; + YYUSE (yyo); if (!yyvaluep) return; # ifdef YYPRINT @@ -861,7 +863,7 @@ yy_symbol_value_print (yyoutput, yytype, yyvaluep) switch (yytype) { default: - break; + break; } } @@ -987,7 +989,6 @@ int yydebug; # define YYMAXDEPTH 10000 #endif - #if YYERROR_VERBOSE @@ -1090,115 +1091,145 @@ yytnamerr (char *yyres, const char *yystr) } # endif -/* Copy into YYRESULT an error message about the unexpected token - YYCHAR while in state YYSTATE. Return the number of bytes copied, - including the terminating null byte. If YYRESULT is null, do not - copy anything; just return the number of bytes that would be - copied. As a special case, return 0 if an ordinary "syntax error" - message will do. Return YYSIZE_MAXIMUM if overflow occurs during - size calculation. */ -static YYSIZE_T -yysyntax_error (char *yyresult, int yystate, int yychar) -{ - int yyn = yypact[yystate]; +/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message + about the unexpected token YYTOKEN for the state stack whose top is + YYSSP. - if (! (YYPACT_NINF < yyn && yyn <= YYLAST)) - return 0; - else + Return 0 if *YYMSG was successfully written. Return 1 if *YYMSG is + not large enough to hold the message. In that case, also set + *YYMSG_ALLOC to the required number of bytes. Return 2 if the + required number of bytes is too large to store. */ +static int +yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, + yytype_int16 *yyssp, int yytoken) +{ + YYSIZE_T yysize0 = yytnamerr (YY_NULL, yytname[yytoken]); + YYSIZE_T yysize = yysize0; + enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; + /* Internationalized format string. */ + const char *yyformat = YY_NULL; + /* Arguments of yyformat. */ + char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; + /* Number of reported tokens (one for the "unexpected", one per + "expected"). */ + int yycount = 0; + + /* There are many possibilities here to consider: + - Assume YYFAIL is not used. It's too flawed to consider. See + <http://lists.gnu.org/archive/html/bison-patches/2009-12/msg00024.html> + for details. YYERROR is fine as it does not invoke this + function. + - If this state is a consistent state with a default action, then + the only way this function was invoked is if the default action + is an error action. In that case, don't check for expected + tokens because there are none. + - The only way there can be no lookahead present (in yychar) is if + this state is a consistent state with a default action. Thus, + detecting the absence of a lookahead is sufficient to determine + that there is no unexpected or expected token to report. In that + case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this state is a + consistent state with a default action. There might have been a + previous inconsistent state, consistent state with a non-default + action, or user semantic action that manipulated yychar. + - Of course, the expected token list depends on states to have + correct lookahead information, and it depends on the parser not + to perform extra reductions after fetching a lookahead from the + scanner and before detecting a syntax error. Thus, state merging + (from LALR or IELR) and default reductions corrupt the expected + token list. However, the list is correct for canonical LR with + one exception: it will still contain any token that will not be + accepted due to an error action in a later state. + */ + if (yytoken != YYEMPTY) { - int yytype = YYTRANSLATE (yychar); - YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]); - YYSIZE_T yysize = yysize0; - YYSIZE_T yysize1; - int yysize_overflow = 0; - enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; - char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; - int yyx; - -# if 0 - /* This is so xgettext sees the translatable formats that are - constructed on the fly. */ - YY_("syntax error, unexpected %s"); - YY_("syntax error, unexpected %s, expecting %s"); - YY_("syntax error, unexpected %s, expecting %s or %s"); - YY_("syntax error, unexpected %s, expecting %s or %s or %s"); - YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"); -# endif - char *yyfmt; - char const *yyf; - static char const yyunexpected[] = "syntax error, unexpected %s"; - static char const yyexpecting[] = ", expecting %s"; - static char const yyor[] = " or %s"; - char yyformat[sizeof yyunexpected - + sizeof yyexpecting - 1 - + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2) - * (sizeof yyor - 1))]; - char const *yyprefix = yyexpecting; - - /* Start YYX at -YYN if negative to avoid negative indexes in - YYCHECK. */ - int yyxbegin = yyn < 0 ? -yyn : 0; - - /* Stay within bounds of both yycheck and yytname. */ - int yychecklim = YYLAST - yyn + 1; - int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; - int yycount = 1; - - yyarg[0] = yytname[yytype]; - yyfmt = yystpcpy (yyformat, yyunexpected); - - for (yyx = yyxbegin; yyx < yyxend; ++yyx) - if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) - { - if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) - { - yycount = 1; - yysize = yysize0; - yyformat[sizeof yyunexpected - 1] = '\0'; - break; - } - yyarg[yycount++] = yytname[yyx]; - yysize1 = yysize + yytnamerr (0, yytname[yyx]); - yysize_overflow |= (yysize1 < yysize); - yysize = yysize1; - yyfmt = yystpcpy (yyfmt, yyprefix); - yyprefix = yyor; - } + int yyn = yypact[*yyssp]; + yyarg[yycount++] = yytname[yytoken]; + if (!yypact_value_is_default (yyn)) + { + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. In other words, skip the first -YYN actions for + this state because they are default actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST - yyn + 1; + int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + int yyx; + + for (yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR + && !yytable_value_is_error (yytable[yyx + yyn])) + { + if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) + { + yycount = 1; + yysize = yysize0; + break; + } + yyarg[yycount++] = yytname[yyx]; + { + YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULL, yytname[yyx]); + if (! (yysize <= yysize1 + && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) + return 2; + yysize = yysize1; + } + } + } + } - yyf = YY_(yyformat); - yysize1 = yysize + yystrlen (yyf); - yysize_overflow |= (yysize1 < yysize); - yysize = yysize1; + switch (yycount) + { +# define YYCASE_(N, S) \ + case N: \ + yyformat = S; \ + break + YYCASE_(0, YY_("syntax error")); + YYCASE_(1, YY_("syntax error, unexpected %s")); + YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s")); + YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s")); + YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); + YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); +# undef YYCASE_ + } - if (yysize_overflow) - return YYSIZE_MAXIMUM; + { + YYSIZE_T yysize1 = yysize + yystrlen (yyformat); + if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) + return 2; + yysize = yysize1; + } - if (yyresult) - { - /* Avoid sprintf, as that infringes on the user's name space. - Don't have undefined behavior even if the translation - produced a string with the wrong number of "%s"s. */ - char *yyp = yyresult; - int yyi = 0; - while ((*yyp = *yyf) != '\0') - { - if (*yyp == '%' && yyf[1] == 's' && yyi < yycount) - { - yyp += yytnamerr (yyp, yyarg[yyi++]); - yyf += 2; - } - else - { - yyp++; - yyf++; - } - } - } - return yysize; + if (*yymsg_alloc < yysize) + { + *yymsg_alloc = 2 * yysize; + if (! (yysize <= *yymsg_alloc + && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM)) + *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM; + return 1; } + + /* Avoid sprintf, as that infringes on the user's name space. + Don't have undefined behavior even if the translation + produced a string with the wrong number of "%s"s. */ + { + char *yyp = *yymsg; + int yyi = 0; + while ((*yyp = *yyformat) != '\0') + if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount) + { + yyp += yytnamerr (yyp, yyarg[yyi++]); + yyformat += 2; + } + else + { + yyp++; + yyformat++; + } + } + return 0; } #endif /* YYERROR_VERBOSE */ - /*-----------------------------------------------. | Release the memory associated to this symbol. | @@ -1227,40 +1258,35 @@ yydestruct (yymsg, yytype, yyvaluep) { default: - break; + break; } } -/* Prevent warnings from -Wmissing-prototypes. */ -#ifdef YYPARSE_PARAM -#if defined __STDC__ || defined __cplusplus -int yyparse (void *YYPARSE_PARAM); -#else -int yyparse (); -#endif -#else /* ! YYPARSE_PARAM */ -#if defined __STDC__ || defined __cplusplus -int yyparse (void); -#else -int yyparse (); -#endif -#endif /* ! YYPARSE_PARAM */ + /* The lookahead symbol. */ int yychar; + +#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN +# define YY_IGNORE_MAYBE_UNINITIALIZED_END +#endif +#ifndef YY_INITIAL_VALUE +# define YY_INITIAL_VALUE(Value) /* Nothing. */ +#endif + /* The semantic value of the lookahead symbol. */ -YYSTYPE yylval; +YYSTYPE yylval YY_INITIAL_VALUE(yyval_default); /* Number of syntax errors so far. */ int yynerrs; - -/*-------------------------. -| yyparse or yypush_parse. | -`-------------------------*/ +/*----------. +| yyparse. | +`----------*/ #ifdef YYPARSE_PARAM #if (defined __STDC__ || defined __C99__FUNC__ \ @@ -1284,8 +1310,6 @@ yyparse () #endif #endif { - - int yystate; /* Number of tokens to shift before error messages enabled. */ int yyerrstatus; @@ -1294,7 +1318,7 @@ yyparse () `yyss': related to states. `yyvs': related to semantic values. - Refer to the stacks thru separate pointers, to allow yyoverflow + Refer to the stacks through separate pointers, to allow yyoverflow to reallocate them elsewhere. */ /* The state stack. */ @@ -1312,7 +1336,7 @@ yyparse () int yyn; int yyresult; /* Lookahead token as an internal (translated) token number. */ - int yytoken; + int yytoken = 0; /* The variables used to return semantic value and location from the action routines. */ YYSTYPE yyval; @@ -1330,9 +1354,8 @@ yyparse () Keep to zero when no symbol should be popped. */ int yylen = 0; - yytoken = 0; - yyss = yyssa; - yyvs = yyvsa; + yyssp = yyss = yyssa; + yyvsp = yyvs = yyvsa; yystacksize = YYINITDEPTH; YYDPRINTF ((stderr, "Starting parse\n")); @@ -1341,14 +1364,6 @@ yyparse () yyerrstatus = 0; yynerrs = 0; yychar = YYEMPTY; /* Cause a token to be read. */ - - /* Initialize stack pointers. - Waste one element of value and location stack - so that they stay on the same level as the state stack. - The wasted elements are never initialized. */ - yyssp = yyss; - yyvsp = yyvs; - goto yysetstate; /*------------------------------------------------------------. @@ -1440,7 +1455,7 @@ yybackup: /* First try to decide what to do without reference to lookahead token. */ yyn = yypact[yystate]; - if (yyn == YYPACT_NINF) + if (yypact_value_is_default (yyn)) goto yydefault; /* Not known => get a lookahead token if don't already have one. */ @@ -1471,8 +1486,8 @@ yybackup: yyn = yytable[yyn]; if (yyn <= 0) { - if (yyn == 0 || yyn == YYTABLE_NINF) - goto yyerrlab; + if (yytable_value_is_error (yyn)) + goto yyerrlab; yyn = -yyn; goto yyreduce; } @@ -1489,7 +1504,9 @@ yybackup: yychar = YYEMPTY; yystate = yyn; + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN *++yyvsp = yylval; + YY_IGNORE_MAYBE_UNINITIALIZED_END goto yynewstate; @@ -1526,9 +1543,8 @@ yyreduce: switch (yyn) { case 2: - -/* Line 1455 of yacc.c */ -#line 101 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 100 "printrcy.y" { current_printer = stpui_plist_create((yyvsp[(2) - (3)].sval), (yyvsp[(3) - (3)].sval)); g_free((yyvsp[(2) - (3)].sval)); @@ -1537,9 +1553,8 @@ yyreduce: break; case 3: - -/* Line 1455 of yacc.c */ -#line 112 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 111 "printrcy.y" { if ((yyvsp[(2) - (2)].sval)) g_free((yyvsp[(2) - (2)].sval)); @@ -1547,9 +1562,8 @@ yyreduce: break; case 4: - -/* Line 1455 of yacc.c */ -#line 119 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 118 "printrcy.y" { if (current_printer && (yyvsp[(2) - (2)].sval)) { @@ -1560,9 +1574,8 @@ yyreduce: break; case 5: - -/* Line 1455 of yacc.c */ -#line 129 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 128 "printrcy.y" { if (current_printer && (yyvsp[(2) - (2)].sval)) { @@ -1573,9 +1586,8 @@ yyreduce: break; case 6: - -/* Line 1455 of yacc.c */ -#line 139 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 138 "printrcy.y" { if (current_printer && (yyvsp[(2) - (2)].sval)) { @@ -1586,9 +1598,8 @@ yyreduce: break; case 7: - -/* Line 1455 of yacc.c */ -#line 149 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 148 "printrcy.y" { if (current_printer && (yyvsp[(2) - (2)].sval)) { @@ -1599,9 +1610,8 @@ yyreduce: break; case 8: - -/* Line 1455 of yacc.c */ -#line 159 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 158 "printrcy.y" { if (current_printer) stpui_plist_set_command_type(current_printer, (yyvsp[(2) - (2)].ival)); @@ -1609,9 +1619,8 @@ yyreduce: break; case 9: - -/* Line 1455 of yacc.c */ -#line 166 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 165 "printrcy.y" { if (current_printer) current_printer->scaling = (yyvsp[(2) - (2)].dval); @@ -1619,9 +1628,8 @@ yyreduce: break; case 10: - -/* Line 1455 of yacc.c */ -#line 173 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 172 "printrcy.y" { if (current_printer) current_printer->orientation = (yyvsp[(2) - (2)].ival); @@ -1629,9 +1637,8 @@ yyreduce: break; case 11: - -/* Line 1455 of yacc.c */ -#line 180 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 179 "printrcy.y" { if (current_printer) current_printer->auto_size_roll_feed_paper = (yyvsp[(2) - (2)].ival); @@ -1639,9 +1646,8 @@ yyreduce: break; case 12: - -/* Line 1455 of yacc.c */ -#line 187 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 186 "printrcy.y" { if (current_printer) current_printer->unit = (yyvsp[(2) - (2)].ival); @@ -1649,9 +1655,8 @@ yyreduce: break; case 13: - -/* Line 1455 of yacc.c */ -#line 194 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 193 "printrcy.y" { if (current_printer) stp_set_left(current_printer->v, (yyvsp[(2) - (2)].ival)); @@ -1659,9 +1664,8 @@ yyreduce: break; case 14: - -/* Line 1455 of yacc.c */ -#line 201 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 200 "printrcy.y" { if (current_printer) stp_set_top(current_printer->v, (yyvsp[(2) - (2)].ival)); @@ -1669,9 +1673,8 @@ yyreduce: break; case 15: - -/* Line 1455 of yacc.c */ -#line 208 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 207 "printrcy.y" { if (current_printer) { @@ -1693,9 +1696,8 @@ yyreduce: break; case 16: - -/* Line 1455 of yacc.c */ -#line 229 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 228 "printrcy.y" { if (current_printer) stp_set_page_width(current_printer->v, (yyvsp[(2) - (2)].ival)); @@ -1703,9 +1705,8 @@ yyreduce: break; case 17: - -/* Line 1455 of yacc.c */ -#line 236 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 235 "printrcy.y" { if (current_printer) stp_set_page_height(current_printer->v, (yyvsp[(2) - (2)].ival)); @@ -1713,9 +1714,8 @@ yyreduce: break; case 19: - -/* Line 1455 of yacc.c */ -#line 246 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 245 "printrcy.y" { if (current_printer) { @@ -1733,9 +1733,8 @@ yyreduce: break; case 20: - -/* Line 1455 of yacc.c */ -#line 263 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 262 "printrcy.y" { if (current_printer) { @@ -1754,9 +1753,8 @@ yyreduce: break; case 21: - -/* Line 1455 of yacc.c */ -#line 281 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 280 "printrcy.y" { if (current_printer) { @@ -1775,9 +1773,8 @@ yyreduce: break; case 22: - -/* Line 1455 of yacc.c */ -#line 299 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 298 "printrcy.y" { if (current_printer) { @@ -1795,9 +1792,8 @@ yyreduce: break; case 23: - -/* Line 1455 of yacc.c */ -#line 316 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 315 "printrcy.y" { if (current_printer) { @@ -1815,9 +1811,8 @@ yyreduce: break; case 24: - -/* Line 1455 of yacc.c */ -#line 333 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 332 "printrcy.y" { if (current_printer) { @@ -1839,9 +1834,8 @@ yyreduce: break; case 25: - -/* Line 1455 of yacc.c */ -#line 354 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 353 "printrcy.y" { if (current_printer) { @@ -1865,16 +1859,14 @@ yyreduce: break; case 56: - -/* Line 1455 of yacc.c */ -#line 402 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 401 "printrcy.y" { stpui_printrc_current_printer = (yyvsp[(2) - (2)].sval); } break; case 57: - -/* Line 1455 of yacc.c */ -#line 406 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 405 "printrcy.y" { if (strcmp((yyvsp[(2) - (2)].sval), "True") == 0) stpui_show_all_paper_sizes = 1; @@ -1885,9 +1877,8 @@ yyreduce: break; case 61: - -/* Line 1455 of yacc.c */ -#line 422 "printrcy.y" +/* Line 1792 of yacc.c */ +#line 421 "printrcy.y" { if ((yyvsp[(2) - (2)].sval)) { @@ -1899,11 +1890,21 @@ yyreduce: break; - -/* Line 1455 of yacc.c */ -#line 1905 "printrcy.c" +/* Line 1792 of yacc.c */ +#line 1895 "printrcy.c" default: break; } + /* User semantic actions sometimes alter yychar, and that requires + that yytoken be updated with the new translation. We take the + approach of translating immediately before every use of yytoken. + One alternative is translating here after every semantic action, + but that translation would be missed if the semantic action invokes + YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or + if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an + incorrect destructor might then be invoked immediately. In the + case of YYERROR or YYBACKUP, subsequent parser actions might lead + to an incorrect destructor call or verbose syntax error message + before the lookahead is translated. */ YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); YYPOPSTACK (yylen); @@ -1931,6 +1932,10 @@ yyreduce: | yyerrlab -- here on detecting error | `------------------------------------*/ yyerrlab: + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar); + /* If not already recovering from an error, report this error. */ if (!yyerrstatus) { @@ -1938,37 +1943,36 @@ yyerrlab: #if ! YYERROR_VERBOSE yyerror (YY_("syntax error")); #else +# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \ + yyssp, yytoken) { - YYSIZE_T yysize = yysyntax_error (0, yystate, yychar); - if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM) - { - YYSIZE_T yyalloc = 2 * yysize; - if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM)) - yyalloc = YYSTACK_ALLOC_MAXIMUM; - if (yymsg != yymsgbuf) - YYSTACK_FREE (yymsg); - yymsg = (char *) YYSTACK_ALLOC (yyalloc); - if (yymsg) - yymsg_alloc = yyalloc; - else - { - yymsg = yymsgbuf; - yymsg_alloc = sizeof yymsgbuf; - } - } - - if (0 < yysize && yysize <= yymsg_alloc) - { - (void) yysyntax_error (yymsg, yystate, yychar); - yyerror (yymsg); - } - else - { - yyerror (YY_("syntax error")); - if (yysize != 0) - goto yyexhaustedlab; - } + char const *yymsgp = YY_("syntax error"); + int yysyntax_error_status; + yysyntax_error_status = YYSYNTAX_ERROR; + if (yysyntax_error_status == 0) + yymsgp = yymsg; + else if (yysyntax_error_status == 1) + { + if (yymsg != yymsgbuf) + YYSTACK_FREE (yymsg); + yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc); + if (!yymsg) + { + yymsg = yymsgbuf; + yymsg_alloc = sizeof yymsgbuf; + yysyntax_error_status = 2; + } + else + { + yysyntax_error_status = YYSYNTAX_ERROR; + yymsgp = yymsg; + } + } + yyerror (yymsgp); + if (yysyntax_error_status == 2) + goto yyexhaustedlab; } +# undef YYSYNTAX_ERROR #endif } @@ -2027,7 +2031,7 @@ yyerrlab1: for (;;) { yyn = yypact[yystate]; - if (yyn != YYPACT_NINF) + if (!yypact_value_is_default (yyn)) { yyn += YYTERROR; if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) @@ -2050,7 +2054,9 @@ yyerrlab1: YY_STACK_PRINT (yyss, yyssp); } + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN *++yyvsp = yylval; + YY_IGNORE_MAYBE_UNINITIALIZED_END /* Shift the error token. */ @@ -2074,7 +2080,7 @@ yyabortlab: yyresult = 1; goto yyreturn; -#if !defined(yyoverflow) || YYERROR_VERBOSE +#if !defined yyoverflow || YYERROR_VERBOSE /*-------------------------------------------------. | yyexhaustedlab -- memory exhaustion comes here. | `-------------------------------------------------*/ @@ -2086,8 +2092,13 @@ yyexhaustedlab: yyreturn: if (yychar != YYEMPTY) - yydestruct ("Cleanup: discarding lookahead", - yytoken, &yylval); + { + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = YYTRANSLATE (yychar); + yydestruct ("Cleanup: discarding lookahead", + yytoken, &yylval); + } /* Do not reclaim the symbols of the rule which action triggered this YYABORT or YYACCEPT. */ YYPOPSTACK (yylen); @@ -2111,8 +2122,6 @@ yyreturn: } - -/* Line 1675 of yacc.c */ -#line 447 "printrcy.y" - +/* Line 2055 of yacc.c */ +#line 446 "printrcy.y" diff --git a/src/gutenprintui2/printrcy.h b/src/gutenprintui2/printrcy.h index 5a258ba..a123453 100644 --- a/src/gutenprintui2/printrcy.h +++ b/src/gutenprintui2/printrcy.h @@ -1,10 +1,8 @@ +/* A Bison parser, made by GNU Bison 2.7. */ -/* A Bison parser, made by GNU Bison 2.4.1. */ - -/* Skeleton interface for Bison's Yacc-like parsers in C +/* Bison interface for Yacc-like parsers in C - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 - Free Software Foundation, Inc. + Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -32,6 +30,15 @@ This special exception was added by the Free Software Foundation in version 2.2 of Bison. */ +#ifndef YY_YY_PRINTRCY_H_INCLUDED +# define YY_YY_PRINTRCY_H_INCLUDED +/* Enabling traces. */ +#ifndef YYDEBUG +# define YYDEBUG 0 +#endif +#if YYDEBUG +extern int yydebug; +#endif /* Tokens. */ #ifndef YYTOKENTYPE @@ -121,7 +128,6 @@ - #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED # define yystype YYSTYPE /* obsolescent; will be withdrawn */ @@ -130,4 +136,18 @@ extern YYSTYPE yylval; +#ifdef YYPARSE_PARAM +#if defined __STDC__ || defined __cplusplus +int yyparse (void *YYPARSE_PARAM); +#else +int yyparse (); +#endif +#else /* ! YYPARSE_PARAM */ +#if defined __STDC__ || defined __cplusplus +int yyparse (void); +#else +int yyparse (); +#endif +#endif /* ! YYPARSE_PARAM */ +#endif /* !YY_YY_PRINTRCY_H_INCLUDED */ diff --git a/src/gutenprintui2/printrcy.y b/src/gutenprintui2/printrcy.y index 72e946a..cbad294 100644 --- a/src/gutenprintui2/printrcy.y +++ b/src/gutenprintui2/printrcy.y @@ -1,5 +1,4 @@ /* - * "$Id: printrcy.y,v 1.2 2006/11/15 01:28:49 rlk Exp $" * * Test pattern generator for Gutenprint * diff --git a/src/gutenprintui2/ui-utils.c b/src/gutenprintui2/ui-utils.c index 724f884..272e04f 100644 --- a/src/gutenprintui2/ui-utils.c +++ b/src/gutenprintui2/ui-utils.c @@ -1,5 +1,4 @@ /* - * "$Id: ui-utils.c,v 1.5 2014/01/04 00:31:37 rlk Exp $" * * Main window code for Print plug-in for the GIMP. * diff --git a/src/main/Makefile.am b/src/main/Makefile.am index 23f3d26..6b41313 100644 --- a/src/main/Makefile.am +++ b/src/main/Makefile.am @@ -1,4 +1,3 @@ -## $Id: Makefile.am,v 1.107 2015/06/24 23:15:13 speachy Exp $ ## Copyright (C) 2000 Roger Leigh ## ## This program is free software; you can redistribute it and/or modify @@ -37,6 +36,7 @@ pkgmodule_LTLIBRARIES = \ print-escp2.la \ print-lexmark.la \ print-pcl.la \ + print-dpl.la \ print-ps.la \ print-dyesub.la \ print-raw.la @@ -76,6 +76,9 @@ print_lexmark_la_LDFLAGS = -module -avoid-version print_pcl_la_SOURCES = print-pcl.c print_pcl_la_LDFLAGS = -module -avoid-version +print_dpl_la_SOURCES = print-dpl.c +print_dpl_la_LDFLAGS = -module -avoid-version + print_ps_la_SOURCES = print-ps.c xmlppd.c xmlppd.h print_ps_la_LDFLAGS = -module -avoid-version @@ -93,6 +96,7 @@ module_SOURCES = \ $(print_escp2_la_SOURCES) \ $(print_lexmark_la_SOURCES) \ $(print_pcl_la_SOURCES) \ + $(print_dpl_la_SOURCES) \ $(print_ps_la_SOURCES) \ $(print_dyesub_la_SOURCES) \ $(print_raw_la_SOURCES) diff --git a/src/main/Makefile.in b/src/main/Makefile.in index a91f253..47a0c41 100644 --- a/src/main/Makefile.in +++ b/src/main/Makefile.in @@ -85,24 +85,23 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(top_srcdir)/scripts/global.mk $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/scripts/mkinstalldirs \ - $(srcdir)/gutenprint.pc.in $(top_srcdir)/scripts/depcomp + $(srcdir)/Makefile.am $(srcdir)/gutenprint.pc.in \ + $(top_srcdir)/scripts/depcomp subdir = src/main ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/isc-posix.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stp.m4 \ - $(top_srcdir)/m4/stp_cups.m4 $(top_srcdir)/m4/stp_gimp.m4 \ - $(top_srcdir)/m4/stp_option.m4 $(top_srcdir)/m4/stp_release.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/stp.m4 $(top_srcdir)/m4/stp_cups.m4 \ + $(top_srcdir)/m4/stp_gimp.m4 $(top_srcdir)/m4/stp_option.m4 \ + $(top_srcdir)/m4/stp_release.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/scripts/mkinstalldirs +mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = gutenprint.pc CONFIG_CLEAN_VPATH_FILES = @@ -166,8 +165,8 @@ am__libgutenprint_la_SOURCES_DIST = array.c bit-ops.c channel.c \ canon-printers.h canon-media-mode.h print-escp2.c \ escp2-driver.c print-escp2.h print-escp2-data.c \ escp2-channels.c escp2-papers.c escp2-resolutions.c \ - print-lexmark.c print-pcl.c print-ps.c xmlppd.c xmlppd.h \ - print-olympus.c print-raw.c + print-lexmark.c print-pcl.c print-dpl.c print-ps.c xmlppd.c \ + xmlppd.h print-olympus.c print-raw.c am__objects_1 = mxml-attr.lo mxml-file.lo mxml-node.lo mxml-search.lo am__objects_2 = am__objects_3 = print-color.lo color-conversions.lo @@ -176,13 +175,14 @@ am__objects_5 = print-escp2.lo escp2-driver.lo print-escp2-data.lo \ escp2-channels.lo escp2-papers.lo escp2-resolutions.lo am__objects_6 = print-lexmark.lo am__objects_7 = print-pcl.lo -am__objects_8 = print-ps.lo xmlppd.lo -am__objects_9 = print-olympus.lo -am__objects_10 = print-raw.lo -am__objects_11 = $(am__objects_3) $(am__objects_4) $(am__objects_5) \ +am__objects_8 = print-dpl.lo +am__objects_9 = print-ps.lo xmlppd.lo +am__objects_10 = print-olympus.lo +am__objects_11 = print-raw.lo +am__objects_12 = $(am__objects_3) $(am__objects_4) $(am__objects_5) \ $(am__objects_6) $(am__objects_7) $(am__objects_8) \ - $(am__objects_9) $(am__objects_10) -@BUILD_MODULES_FALSE@am__objects_12 = $(am__objects_11) + $(am__objects_9) $(am__objects_10) $(am__objects_11) +@BUILD_MODULES_FALSE@am__objects_13 = $(am__objects_12) am_libgutenprint_la_OBJECTS = array.lo bit-ops.lo channel.lo color.lo \ curve.lo curve-cache.lo dither-ed.lo dither-eventone.lo \ dither-inks.lo dither-main.lo dither-ordered.lo \ @@ -191,7 +191,7 @@ am_libgutenprint_la_OBJECTS = array.lo bit-ops.lo channel.lo color.lo \ print-dither-matrices.lo print-list.lo print-papers.lo \ print-util.lo print-vars.lo print-version.lo print-weave.lo \ printers.lo sequence.lo string-list.lo xml.lo $(am__objects_1) \ - $(am__objects_2) $(am__objects_12) + $(am__objects_2) $(am__objects_13) libgutenprint_la_OBJECTS = $(am_libgutenprint_la_OBJECTS) libgutenprint_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ @@ -205,6 +205,13 @@ print_canon_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_CFLAGS) $(CFLAGS) $(print_canon_la_LDFLAGS) $(LDFLAGS) -o \ $@ @BUILD_MODULES_TRUE@am_print_canon_la_rpath = -rpath $(pkgmoduledir) +print_dpl_la_LIBADD = +am_print_dpl_la_OBJECTS = print-dpl.lo +print_dpl_la_OBJECTS = $(am_print_dpl_la_OBJECTS) +print_dpl_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(print_dpl_la_LDFLAGS) $(LDFLAGS) -o $@ +@BUILD_MODULES_TRUE@am_print_dpl_la_rpath = -rpath $(pkgmoduledir) print_dyesub_la_LIBADD = am_print_dyesub_la_OBJECTS = print-olympus.lo print_dyesub_la_OBJECTS = $(am_print_dyesub_la_OBJECTS) @@ -287,15 +294,16 @@ am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) am__v_CCLD_0 = @echo " CCLD " $@; am__v_CCLD_1 = SOURCES = $(color_traditional_la_SOURCES) $(libgutenprint_la_SOURCES) \ - $(print_canon_la_SOURCES) $(print_dyesub_la_SOURCES) \ - $(print_escp2_la_SOURCES) $(print_lexmark_la_SOURCES) \ - $(print_pcl_la_SOURCES) $(print_ps_la_SOURCES) \ - $(print_raw_la_SOURCES) -DIST_SOURCES = $(color_traditional_la_SOURCES) \ - $(am__libgutenprint_la_SOURCES_DIST) $(print_canon_la_SOURCES) \ + $(print_canon_la_SOURCES) $(print_dpl_la_SOURCES) \ $(print_dyesub_la_SOURCES) $(print_escp2_la_SOURCES) \ $(print_lexmark_la_SOURCES) $(print_pcl_la_SOURCES) \ $(print_ps_la_SOURCES) $(print_raw_la_SOURCES) +DIST_SOURCES = $(color_traditional_la_SOURCES) \ + $(am__libgutenprint_la_SOURCES_DIST) $(print_canon_la_SOURCES) \ + $(print_dpl_la_SOURCES) $(print_dyesub_la_SOURCES) \ + $(print_escp2_la_SOURCES) $(print_lexmark_la_SOURCES) \ + $(print_pcl_la_SOURCES) $(print_ps_la_SOURCES) \ + $(print_raw_la_SOURCES) am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ @@ -364,9 +372,6 @@ ENABLE_STATIC = @ENABLE_STATIC@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FIND = @FIND@ -FOOMATIC_CONFIGURE = @FOOMATIC_CONFIGURE@ -FOOMATIC_KITLOAD = @FOOMATIC_KITLOAD@ -FOOMATIC_PPDFILE = @FOOMATIC_PPDFILE@ GENPPD_LIBS = @GENPPD_LIBS@ GIMP2_CFLAGS = @GIMP2_CFLAGS@ GIMP2_LIBS = @GIMP2_LIBS@ @@ -399,9 +404,6 @@ GUTENPRINT_MICRO_VERSION = @GUTENPRINT_MICRO_VERSION@ GUTENPRINT_MINOR_VERSION = @GUTENPRINT_MINOR_VERSION@ GUTENPRINT_RELEASE_VERSION = @GUTENPRINT_RELEASE_VERSION@ GUTENPRINT_VERSION = @GUTENPRINT_VERSION@ -IJS_CFLAGS = @IJS_CFLAGS@ -IJS_CONFIG = @IJS_CONFIG@ -IJS_LIBS = @IJS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -422,6 +424,7 @@ LIBREADLINE_DEPS = @LIBREADLINE_DEPS@ LIBS = $(INTLLIBS) @LIBS@ LIBTOOL = @LIBTOOL@ LIBTOOL_DEPS = @LIBTOOL_DEPS@ +LIBUSB_BACKEND_LIBDEPS = @LIBUSB_BACKEND_LIBDEPS@ LIBUSB_CFLAGS = @LIBUSB_CFLAGS@ LIBUSB_LIBS = @LIBUSB_LIBS@ LIPO = @LIPO@ @@ -551,6 +554,7 @@ pkgmoduledir = $(pkglibdir)/@GUTENPRINT_MAJOR_VERSION@.@GUTENPRINT_MINOR_VERSION @BUILD_MODULES_TRUE@ print-escp2.la \ @BUILD_MODULES_TRUE@ print-lexmark.la \ @BUILD_MODULES_TRUE@ print-pcl.la \ +@BUILD_MODULES_TRUE@ print-dpl.la \ @BUILD_MODULES_TRUE@ print-ps.la \ @BUILD_MODULES_TRUE@ print-dyesub.la \ @BUILD_MODULES_TRUE@ print-raw.la @@ -585,6 +589,8 @@ print_lexmark_la_SOURCES = print-lexmark.c print_lexmark_la_LDFLAGS = -module -avoid-version print_pcl_la_SOURCES = print-pcl.c print_pcl_la_LDFLAGS = -module -avoid-version +print_dpl_la_SOURCES = print-dpl.c +print_dpl_la_LDFLAGS = -module -avoid-version print_ps_la_SOURCES = print-ps.c xmlppd.c xmlppd.h print_ps_la_LDFLAGS = -module -avoid-version print_dyesub_la_SOURCES = print-olympus.c @@ -598,6 +604,7 @@ module_SOURCES = \ $(print_escp2_la_SOURCES) \ $(print_lexmark_la_SOURCES) \ $(print_pcl_la_SOURCES) \ + $(print_dpl_la_SOURCES) \ $(print_ps_la_SOURCES) \ $(print_dyesub_la_SOURCES) \ $(print_raw_la_SOURCES) @@ -780,6 +787,9 @@ libgutenprint.la: $(libgutenprint_la_OBJECTS) $(libgutenprint_la_DEPENDENCIES) $ print-canon.la: $(print_canon_la_OBJECTS) $(print_canon_la_DEPENDENCIES) $(EXTRA_print_canon_la_DEPENDENCIES) $(AM_V_CCLD)$(print_canon_la_LINK) $(am_print_canon_la_rpath) $(print_canon_la_OBJECTS) $(print_canon_la_LIBADD) $(LIBS) +print-dpl.la: $(print_dpl_la_OBJECTS) $(print_dpl_la_DEPENDENCIES) $(EXTRA_print_dpl_la_DEPENDENCIES) + $(AM_V_CCLD)$(print_dpl_la_LINK) $(am_print_dpl_la_rpath) $(print_dpl_la_OBJECTS) $(print_dpl_la_LIBADD) $(LIBS) + print-dyesub.la: $(print_dyesub_la_OBJECTS) $(print_dyesub_la_DEPENDENCIES) $(EXTRA_print_dyesub_la_DEPENDENCIES) $(AM_V_CCLD)$(print_dyesub_la_LINK) $(am_print_dyesub_la_rpath) $(print_dyesub_la_OBJECTS) $(print_dyesub_la_LIBADD) $(LIBS) @@ -834,6 +844,7 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/print-canon.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/print-color.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/print-dither-matrices.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/print-dpl.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/print-escp2-data.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/print-escp2.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/print-lexmark.Plo@am__quote@ diff --git a/src/main/array.c b/src/main/array.c index ee494d8..c6545bd 100644 --- a/src/main/array.c +++ b/src/main/array.c @@ -1,5 +1,4 @@ /* - * "$Id: array.c,v 1.17 2010/08/04 00:33:55 rlk Exp $" * * Array data type. This type is designed to be derived from by * the curve and dither matrix types. diff --git a/src/main/bit-ops.c b/src/main/bit-ops.c index 3a5e746..965a481 100644 --- a/src/main/bit-ops.c +++ b/src/main/bit-ops.c @@ -1,5 +1,4 @@ /* - * "$Id: bit-ops.c,v 1.15 2012/04/19 14:41:03 gernot2270 Exp $" * * Softweave calculator for Gutenprint. * diff --git a/src/main/channel.c b/src/main/channel.c index eb50825..26ec20e 100644 --- a/src/main/channel.c +++ b/src/main/channel.c @@ -1,5 +1,4 @@ /* - * "$Id: channel.c,v 1.35 2011/12/30 00:36:10 rlk Exp $" * * Dither routine entrypoints * diff --git a/src/main/color-conversion.h b/src/main/color-conversion.h index 5e4f1c3..5d60cdc 100644 --- a/src/main/color-conversion.h +++ b/src/main/color-conversion.h @@ -1,5 +1,4 @@ /* - * "$Id: color-conversion.h,v 1.12 2008/01/21 23:19:39 rlk Exp $" * * Gutenprint color management module - traditional Gimp-Print algorithm. * diff --git a/src/main/color-conversions.c b/src/main/color-conversions.c index 1959613..e2a15e9 100644 --- a/src/main/color-conversions.c +++ b/src/main/color-conversions.c @@ -1,5 +1,4 @@ /* - * "$Id: color-conversions.c,v 1.20 2005/07/04 00:23:54 rlk Exp $" * * Gimp-Print color management module - traditional Gimp-Print algorithm. * diff --git a/src/main/color.c b/src/main/color.c index 33bd7b3..e6f16c3 100644 --- a/src/main/color.c +++ b/src/main/color.c @@ -1,5 +1,4 @@ /* - * "$Id: color.c,v 1.11 2010/08/04 00:33:56 rlk Exp $" * * Gimp-Print color module interface. * diff --git a/src/main/curve-cache.c b/src/main/curve-cache.c index 1ae7d0e..ca1374e 100644 --- a/src/main/curve-cache.c +++ b/src/main/curve-cache.c @@ -1,5 +1,4 @@ /* - * "$Id: curve-cache.c,v 1.6 2005/10/18 02:08:17 rlk Exp $" * * Gimp-Print color management module - traditional Gimp-Print algorithm. * diff --git a/src/main/curve.c b/src/main/curve.c index 7e4d02b..8425c05 100644 --- a/src/main/curve.c +++ b/src/main/curve.c @@ -1,5 +1,4 @@ /* - * "$Id: curve.c,v 1.56 2014/01/04 00:31:37 rlk Exp $" * * Print plug-in driver utility functions for the GIMP. * diff --git a/src/main/dither-ed.c b/src/main/dither-ed.c index 76820a0..7b8ce89 100644 --- a/src/main/dither-ed.c +++ b/src/main/dither-ed.c @@ -1,5 +1,4 @@ /* - * "$Id: dither-ed.c,v 1.18 2004/09/17 18:38:17 rleigh Exp $" * * Error diffusion and closely related adaptive hybrid dither algorithm * diff --git a/src/main/dither-eventone.c b/src/main/dither-eventone.c index 2b983e0..aa767d2 100644 --- a/src/main/dither-eventone.c +++ b/src/main/dither-eventone.c @@ -1,5 +1,4 @@ /* - * "$Id: dither-eventone.c,v 1.42 2008/02/19 01:13:46 rlk Exp $" * * EvenTone dither implementation for Gimp-Print * diff --git a/src/main/dither-impl.h b/src/main/dither-impl.h index 28f9832..a2a26f2 100644 --- a/src/main/dither-impl.h +++ b/src/main/dither-impl.h @@ -1,6 +1,4 @@ /* - * "$Id: dither-impl.h,v 1.32 2008/02/18 14:20:17 rlk Exp $" - * * Internal implementation of dither algorithms * * Copyright 1997-2003 Michael Sweet (mike@easysw.com) and @@ -259,6 +257,3 @@ do \ #endif #endif /* GUTENPRINT_INTERNAL_DITHER_IMPL_H */ -/* - * End of "$Id: dither-impl.h,v 1.32 2008/02/18 14:20:17 rlk Exp $". - */ diff --git a/src/main/dither-inks.c b/src/main/dither-inks.c index 722e407..ff5edbc 100644 --- a/src/main/dither-inks.c +++ b/src/main/dither-inks.c @@ -1,5 +1,4 @@ /* - * "$Id: dither-inks.c,v 1.28 2014/01/04 00:31:37 rlk Exp $" * * Print plug-in driver utility functions for the GIMP. * diff --git a/src/main/dither-inlined-functions.h b/src/main/dither-inlined-functions.h index 5cd09d4..ac93a02 100644 --- a/src/main/dither-inlined-functions.h +++ b/src/main/dither-inlined-functions.h @@ -1,5 +1,4 @@ /* - * "$Id: dither-inlined-functions.h,v 1.6 2004/09/17 18:38:18 rleigh Exp $" * * Performance-critical functions that should be inlined, based on * measurements. diff --git a/src/main/dither-main.c b/src/main/dither-main.c index cd614d6..0aa86c3 100644 --- a/src/main/dither-main.c +++ b/src/main/dither-main.c @@ -1,5 +1,4 @@ /* - * "$Id: dither-main.c,v 1.63 2010/12/05 21:38:14 rlk Exp $" * * Dither routine entrypoints * diff --git a/src/main/dither-ordered.c b/src/main/dither-ordered.c index b488bbe..2516362 100644 --- a/src/main/dither-ordered.c +++ b/src/main/dither-ordered.c @@ -1,5 +1,4 @@ /* - * "$Id: dither-ordered.c,v 1.31 2010/08/04 00:33:56 rlk Exp $" * * Ordered dither algorithm * diff --git a/src/main/dither-predithered.c b/src/main/dither-predithered.c index d58e6bf..ed5bdcd 100644 --- a/src/main/dither-predithered.c +++ b/src/main/dither-predithered.c @@ -1,5 +1,4 @@ /* - * "$Id: dither-predithered.c,v 1.3 2005/07/28 01:00:51 rlk Exp $" * * Very fast dither algorithm * diff --git a/src/main/dither-very-fast.c b/src/main/dither-very-fast.c index 7b83aa8..db89ce2 100644 --- a/src/main/dither-very-fast.c +++ b/src/main/dither-very-fast.c @@ -1,5 +1,4 @@ /* - * "$Id: dither-very-fast.c,v 1.15 2004/09/17 18:38:20 rleigh Exp $" * * Very fast dither algorithm * diff --git a/src/main/escp2-channels.c b/src/main/escp2-channels.c index b110b10..1fcfb37 100644 --- a/src/main/escp2-channels.c +++ b/src/main/escp2-channels.c @@ -1,5 +1,4 @@ /* - * "$Id: escp2-channels.c,v 1.92 2013/12/14 19:36:29 rlk Exp $" * * Print plug-in EPSON ESC/P2 driver for the GIMP. * diff --git a/src/main/escp2-driver.c b/src/main/escp2-driver.c index 7819510..fa63cb3 100644 --- a/src/main/escp2-driver.c +++ b/src/main/escp2-driver.c @@ -1,5 +1,4 @@ /* - * "$Id: escp2-driver.c,v 1.58 2012/01/19 13:25:40 m0m Exp $" * * Print plug-in EPSON ESC/P2 driver for the GIMP. * diff --git a/src/main/escp2-papers.c b/src/main/escp2-papers.c index f1c44b4..c96d42f 100644 --- a/src/main/escp2-papers.c +++ b/src/main/escp2-papers.c @@ -1,5 +1,4 @@ /* - * "$Id: escp2-papers.c,v 1.120 2013/12/14 19:36:29 rlk Exp $" * * Print plug-in EPSON ESC/P2 driver for the GIMP. * diff --git a/src/main/escp2-resolutions.c b/src/main/escp2-resolutions.c index 9966f79..01b9745 100644 --- a/src/main/escp2-resolutions.c +++ b/src/main/escp2-resolutions.c @@ -1,5 +1,4 @@ /* - * "$Id: escp2-resolutions.c,v 1.53 2013/12/14 19:36:29 rlk Exp $" * * Print plug-in EPSON ESC/P2 driver for the GIMP. * diff --git a/src/main/generic-options.c b/src/main/generic-options.c index 1c7b674..c91e41c 100644 --- a/src/main/generic-options.c +++ b/src/main/generic-options.c @@ -1,5 +1,4 @@ /* - * "$Id: generic-options.c,v 1.12 2010/12/05 21:38:14 rlk Exp $" * * Copyright 2003 Robert Krawitz (rlk@alum.mit.edu) * diff --git a/src/main/generic-options.h b/src/main/generic-options.h index 446f349..7782b7f 100644 --- a/src/main/generic-options.h +++ b/src/main/generic-options.h @@ -1,5 +1,4 @@ /* - * "$Id: generic-options.h,v 1.5 2004/09/17 18:38:20 rleigh Exp $" * * Copyright 2003 Robert Krawitz (rlk@alum.mit.edu) * diff --git a/src/main/gutenprint-internal.h b/src/main/gutenprint-internal.h index 9de8214..5460213 100644 --- a/src/main/gutenprint-internal.h +++ b/src/main/gutenprint-internal.h @@ -1,6 +1,4 @@ /* - * "$Id: gutenprint-internal.h,v 1.6 2014/01/04 00:31:38 rlk Exp $" - * * Print plug-in header file for the GIMP. * * Copyright 1997-2000 Michael Sweet (mike@easysw.com) and @@ -94,6 +92,3 @@ stpi_cast_safe(const void *ptr) #endif #endif /* GUTENPRINT_INTERNAL_INTERNAL_H */ -/* - * End of "$Id: gutenprint-internal.h,v 1.6 2014/01/04 00:31:38 rlk Exp $". - */ diff --git a/src/main/image.c b/src/main/image.c index 9149319..3033da9 100644 --- a/src/main/image.c +++ b/src/main/image.c @@ -1,5 +1,4 @@ /* - * "$Id: image.c,v 1.6 2004/09/17 18:38:21 rleigh Exp $" * * Print plug-in driver utility functions for the GIMP. * diff --git a/src/main/module.c b/src/main/module.c index 5d078a2..c21d320 100644 --- a/src/main/module.c +++ b/src/main/module.c @@ -1,5 +1,4 @@ /* - * "$Id: module.c,v 1.27 2012/01/19 13:25:40 m0m Exp $" * * Gutenprint module loader - load modules with libltdl/libdl. * @@ -43,7 +42,7 @@ typedef struct stpi_internal_module_class static void module_list_freefunc(void *item); static int stp_module_register(stp_module_t *module); -#ifdef USE_DLOPEN +#if defined(MODULE) && defined(USE_DLOPEN) static void *stp_dlsym(void *handle, const char *symbol, const char *modulename); #endif @@ -56,11 +55,12 @@ static const stpi_internal_module_class_t module_classes[] = {STP_MODULE_CLASS_INVALID, NULL} /* Must be last */ }; -#if !defined(USE_LTDL) && !defined(USE_DLOPEN) +#if !defined(MODULE) extern stp_module_t print_canon_LTX_stp_module_data; extern stp_module_t print_escp2_LTX_stp_module_data; extern stp_module_t print_lexmark_LTX_stp_module_data; extern stp_module_t print_pcl_LTX_stp_module_data; +extern stp_module_t print_dpl_LTX_stp_module_data; extern stp_module_t print_ps_LTX_stp_module_data; extern stp_module_t print_dyesub_LTX_stp_module_data; extern stp_module_t print_raw_LTX_stp_module_data; @@ -75,6 +75,7 @@ static stp_module_t *static_modules[] = &print_canon_LTX_stp_module_data, &print_escp2_LTX_stp_module_data, &print_pcl_LTX_stp_module_data, + &print_dpl_LTX_stp_module_data, &print_lexmark_LTX_stp_module_data, &print_dyesub_LTX_stp_module_data, &print_raw_LTX_stp_module_data, @@ -95,7 +96,7 @@ module_list_freefunc(void *item /* module to remove */) stp_module_t *module = (stp_module_t *) item; if (module && module->fini) /* Call the module exit function */ module->fini(); -#if defined(USE_LTDL) || defined(USE_DLOPEN) +#if defined(MODULE) if (module && module->handle) DLCLOSE(module->handle); /* Close the module if it's not static */ #endif @@ -112,7 +113,7 @@ int stp_module_load(void) static int ltdl_is_initialised = 0; /* Is libltdl initialised? */ #endif static int module_list_is_initialised = 0; /* Is the module list initialised? */ -#if defined(USE_LTDL) || defined(USE_DLOPEN) +#if defined(MODULE) stp_list_t *dir_list; /* List of directories to scan */ stp_list_t *file_list; /* List of modules to open */ stp_list_item_t *file; /* Pointer to current module */ @@ -142,7 +143,7 @@ int stp_module_load(void) } /* search for available modules */ -#if defined (USE_LTDL) || defined (USE_DLOPEN) +#if defined(MODULE) if (!(dir_list = stp_list_create())) return 1; stp_list_set_freefunc(dir_list, stp_list_node_free_data); @@ -239,7 +240,7 @@ stp_module_get_class(stp_module_class_t class /* Module class */) int stp_module_open(const char *modulename /* Module filename */) { -#if defined(USE_LTDL) || defined(USE_DLOPEN) +#if defined(MODULE) #ifdef USE_LTDL lt_dlhandle module; /* Handle for module */ #else @@ -360,7 +361,7 @@ stp_module_close(stp_list_item_t *module /* Module to close */) /* * If using dlopen, add modulename_LTX_ to symbol name */ -#ifdef USE_DLOPEN +#if defined(MODULE) && defined(USE_DLOPEN) static void *stp_dlsym(void *handle, /* Module */ const char *symbol, /* Symbol name */ const char *modulename) /* Module name */ diff --git a/src/main/mxml-attr.c b/src/main/mxml-attr.c index 2087d85..95d09ae 100644 --- a/src/main/mxml-attr.c +++ b/src/main/mxml-attr.c @@ -1,6 +1,4 @@ /* - * "$Id: mxml-attr.c,v 1.7 2004/09/17 18:38:21 rleigh Exp $" - * * Attribute support code for mini-XML, a small XML-like file parsing library. * * Copyright 2003 by Michael Sweet. @@ -153,8 +151,3 @@ stp_mxmlElementSetAttr(stp_mxml_node_t *node, /* I - Element node */ node->value.element.num_attrs ++; } - - -/* - * End of "$Id: mxml-attr.c,v 1.7 2004/09/17 18:38:21 rleigh Exp $". - */ diff --git a/src/main/mxml-file.c b/src/main/mxml-file.c index a5d4025..a6b73fe 100644 --- a/src/main/mxml-file.c +++ b/src/main/mxml-file.c @@ -1,6 +1,4 @@ /* - * "$Id: mxml-file.c,v 1.13 2012/01/19 13:26:48 m0m Exp $" - * * File loading code for mini-XML, a small XML-like file parsing library. * * Copyright 2003 by Michael Sweet. @@ -1460,8 +1458,3 @@ mxml_write_ws(stp_mxml_node_t *node, /* I - Current node */ return (col); } - - -/* - * End of "$Id: mxml-file.c,v 1.13 2012/01/19 13:26:48 m0m Exp $". - */ diff --git a/src/main/mxml-node.c b/src/main/mxml-node.c index e21f60f..b489d98 100644 --- a/src/main/mxml-node.c +++ b/src/main/mxml-node.c @@ -1,6 +1,4 @@ /* - * "$Id: mxml-node.c,v 1.7 2004/09/17 18:38:21 rleigh Exp $" - * * Node support code for mini-XML, a small XML-like file parsing library. * * Copyright 2003 by Michael Sweet. @@ -487,8 +485,3 @@ mxml_new(stp_mxml_node_t *parent, /* I - Parent node */ return (node); } - - -/* - * End of "$Id: mxml-node.c,v 1.7 2004/09/17 18:38:21 rleigh Exp $". - */ diff --git a/src/main/mxml-search.c b/src/main/mxml-search.c index 02bf125..dd4612b 100644 --- a/src/main/mxml-search.c +++ b/src/main/mxml-search.c @@ -1,6 +1,4 @@ /* - * "$Id: mxml-search.c,v 1.7 2004/09/17 18:38:21 rleigh Exp $" - * * Search/navigation functions for mini-XML, a small XML-like file * parsing library. * @@ -192,8 +190,3 @@ stp_mxmlWalkPrev(stp_mxml_node_t *node, /* I - Current node */ else return (NULL); } - - -/* - * End of "$Id: mxml-search.c,v 1.7 2004/09/17 18:38:21 rleigh Exp $". - */ diff --git a/src/main/path.c b/src/main/path.c index 12a9ec8..2f06a1b 100644 --- a/src/main/path.c +++ b/src/main/path.c @@ -1,5 +1,4 @@ /* - * "$Id: path.c,v 1.20 2008/06/01 14:41:18 rlk Exp $" * * Gutenprint path functions - split and search paths. * diff --git a/src/main/print-canon.c b/src/main/print-canon.c index 0b13445..6d27060 100644 --- a/src/main/print-canon.c +++ b/src/main/print-canon.c @@ -1,5 +1,4 @@ /* - * "$Id: print-canon.c,v 1.586 2015/10/01 15:22:29 gernot2270 Exp $" * * Print plug-in CANON BJL driver for the GIMP. * diff --git a/src/main/print-color.c b/src/main/print-color.c index 8318187..cf9c51b 100644 --- a/src/main/print-color.c +++ b/src/main/print-color.c @@ -1,5 +1,4 @@ /* - * "$Id: print-color.c,v 1.148 2014/01/24 01:55:56 rlk Exp $" * * Gutenprint color management module - traditional Gutenprint algorithm. * diff --git a/src/main/print-dither-matrices.c b/src/main/print-dither-matrices.c index 45ee656..b70ab22 100644 --- a/src/main/print-dither-matrices.c +++ b/src/main/print-dither-matrices.c @@ -1,5 +1,4 @@ /* - * "$Id: print-dither-matrices.c,v 1.39 2014/01/04 00:31:38 rlk Exp $" * * Print plug-in driver utility functions for the GIMP. * diff --git a/src/main/print-dpl.c b/src/main/print-dpl.c new file mode 100644 index 0000000..0802838 --- /dev/null +++ b/src/main/print-dpl.c @@ -0,0 +1,1284 @@ +/* + * + * Print plug-in Datamax-O'Neil DPL driver for Gutenprint. + * + * Copyright 1997-2000 Michael Sweet (mike@easysw.com), + * Robert Krawitz (rlk@alum.mit.edu) and + * Dave Hill (dave@minnie.demon.co.uk) + * + * Copyright 2016 FIXME + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +/* + * This file must include only standard C header files. The core code must + * compile on generic platforms that don't support glib, gimp, gtk, etc. + */ + +#ifdef HAVE_CONFIG_H +#include <config.h> +#endif +#include <gutenprint/gutenprint.h> +#include <gutenprint/gutenprint-intl-internal.h> +#include "gutenprint-internal.h" +#include "dither-impl.h" +#include <stdio.h> +#include <string.h> + +#define DEBUG +#define DPL_DEBUG_DISABLE_BLANKLINE_REMOVAL + +/* + * Local functions... + */ +static void dpl_pcx (stp_vars_t *, unsigned char *, int, int); +static int dpl_get_multiplier (const stp_vars_t * v); + +#ifndef MAX +#define MAX(a, b) ((a) > (b) ? (a) : (b)) +#endif /* !MAX */ + +typedef struct +{ + int height; + int orientation; + int label_separator; + unsigned int h_offset; + unsigned int v_offset; + int darkness; + int speed; + int present; +} dpl_privdata_t; + +/* + * Generic define for a name/value set + */ + +typedef struct +{ + const char *dpl_name; + const char *dpl_text; + int dpl_code; + int p0; + int p1; +} dpl_t; + + +#define DPL_RES_150_150 1 +#define DPL_RES_203_203 2 +#define DPL_RES_300_300 4 +#define DPL_RES_400_400 8 +#define DPL_RES_600_600 16 + +static const dpl_t dpl_resolutions[] = { + {"600dpi", N_("600x600 DPI"), DPL_RES_600_600, 600, 600}, + {"400dpi", N_("400x400 DPI"), DPL_RES_400_400, 400, 400}, + {"300dpi", N_("300x300 DPI"), DPL_RES_300_300, 300, 300}, + {"203dpi", N_("203x203 DPI"), DPL_RES_203_203, 203, 203}, + {"150dpi", N_("150x150 DPI"), DPL_RES_150_150, 150, 150}, +}; + +#define NUM_RESOLUTIONS (sizeof(dpl_resolutions) / sizeof (dpl_t)) + +static const dpl_t dpl_speeds[] = { + {"A", N_("1.0 IPS"), 'A'}, + {"B", N_("1.5 IPS"), 'B'}, + {"C", N_("2.0 IPS"), 'C'}, + {"D", N_("2.5 IPS"), 'D'}, + {"E", N_("3.0 IPS"), 'E'}, + {"F", N_("3.5 IPS"), 'F'}, + {"G", N_("4.0 IPS"), 'G'}, + {"H", N_("4.5 IPS"), 'H'}, + {"I", N_("5.0 IPS"), 'I'}, + {"J", N_("5.5 IPS"), 'J'}, + {"K", N_("6.0 IPS"), 'K'}, + {"L", N_("6.5 IPS"), 'L'}, + {"M", N_("7.0 IPS"), 'M'}, + {"N", N_("7.5 IPS"), 'N'}, + {"O", N_("8.0 IPS"), 'O'}, + {"P", N_("8.5 IPS"), 'P'}, + {"Q", N_("9.0 IPS"), 'Q'}, + {"R", N_("9.5 IPS"), 'R'}, + {"S", N_("10.0 IPS"), 'S'}, + {"T", N_("10.5 IPS"), 'T'}, + {"U", N_("11.0 IPS"), 'U'}, + {"V", N_("11.5 IPS"), 'V'}, + {"W", N_("12.0 IPS"), 'W'}, +}; + +#define NUM_SPEEDS (sizeof(dpl_speeds) / sizeof (dpl_t)) + +/* + * Printer capability data + */ + +typedef struct +{ + int model; + int custom_max_width; + int custom_max_height; + int custom_min_width; + int custom_min_height; + int resolutions; + int max_resolution; + int resolution_adjust; + char max_speed; + char min_speed; + char default_speed; +} dpl_cap_t; + +static const dpl_cap_t dpl_model_capabilities[] = { +/* Datamax-O'Neil Thermal DPL printers */ + {10017, /* I Class Mark II 203 DPI */ + 4 * 72, 99 * 72, /* Max paper size */ + 1, 1, /* Min paper size */ + DPL_RES_203_203, + DPL_RES_203_203, + DPL_RES_203_203, + 'W', + 'C', + 'O', + }, +/* Datamax-O'Neil Thermal DPL printers */ + {10018, /* I Class Mark II 300 DPI */ + 4 * 72, 99 * 72, /* Max paper size */ + 1, 1, /* Min paper size */ + DPL_RES_150_150 | DPL_RES_300_300, /* Resolutions */ + DPL_RES_300_300, + DPL_RES_203_203, + 'S', + 'C', + 'O', + }, +/* Datamax-O'Neil Thermal DPL printers */ + {10020, /* I Class Mark II 600 DPI */ + 4 * 72, 99 * 72, /* Max paper size */ + 1, 1, /* Min paper size */ + /* for future use + DPL_RES_150_150 | DPL_RES_203_203 | DPL_RES_300_300 | DPL_RES_600_600, */ + DPL_RES_300_300 | DPL_RES_600_600, /* Resolutions */ + DPL_RES_600_600, + DPL_RES_300_300, + 'K', + 'C', + 'G', + }, +/* Datamax-O'Neil Thermal DPL printers */ + {10021, /* E Class Mark III Basic 203 DPI*/ + 4 * 72, 99 * 72, /* Max paper size */ + 1, 1, /* Min paper size */ + DPL_RES_203_203, /* Resolutions */ + DPL_RES_203_203, + DPL_RES_203_203, + 'G', + 'C', + 'E', + }, +/* Datamax-O'Neil Thermal DPL printers */ + {10022, /* E Class Mark III Basic 300 DPI*/ + 4 * 72, 99 * 72, /* Max paper size */ + 1, 1, /* Min paper size */ + DPL_RES_300_300, /* Resolutions */ + DPL_RES_300_300, + DPL_RES_300_300, + 'G', + 'C', + 'E', + }, +/* Datamax-O'Neil Thermal DPL printers */ + {10023, /* E Class Mark III Advanced 203 DPI*/ + 4 * 72, 99 * 72, /* Max paper size */ + 1, 1, /* Min paper size */ + DPL_RES_203_203, /* Resolutions */ + DPL_RES_203_203, + DPL_RES_203_203, + 'I', + 'C', + 'E', + }, +/* Datamax-O'Neil Thermal DPL printers */ + {10024, /* E Class Mark III Advanced 300 DPI*/ + 4 * 72, 99 * 72, /* Max paper size */ + 1, 1, /* Min paper size */ + DPL_RES_300_300, /* Resolutions */ + DPL_RES_300_300, + DPL_RES_300_300, + 'I', + 'C', + 'G', + }, +/* Datamax-O'Neil Thermal DPL printers */ + {10025, /* E Class Mark III Pro 203 DPI*/ + 4 * 72, 99 * 72, /* Max paper size */ + 1, 1, /* Min paper size */ + DPL_RES_203_203, /* Resolutions */ + DPL_RES_203_203, + DPL_RES_203_203, + 'K', + 'C', + 'G', + }, +/* Datamax-O'Neil Thermal DPL printers */ + {10026, /* E Class Mark III Pro 300 DPI*/ + 4 * 72, 99 * 72, /* Max paper size */ + 1, 1, /* Min paper size */ + DPL_RES_300_300, /* Resolutions */ + DPL_RES_300_300, + DPL_RES_300_300, + 'I', + 'C', + 'G', + }, +/* Datamax-O'Neil Thermal DPL printers */ + {10027, /* E Class Mark III ProPlus 203 DPI*/ + 4 * 72, 99 * 72, /* Max paper size */ + 1, 1, /* Min paper size */ + DPL_RES_203_203, /* Resolutions */ + DPL_RES_203_203, + DPL_RES_203_203, + 'K', + 'C', + 'G', + }, +/* Datamax-O'Neil Thermal DPL printers */ + {10028, /* E Class Mark III ProPlus 300 DPI*/ + 4 * 72, 99 * 72, /* Max paper size */ + 1, 1, /* Min paper size */ + DPL_RES_300_300, /* Resolutions */ + DPL_RES_300_300, + DPL_RES_300_300, + 'I', + 'C', + 'G', + }, +/* Datamax-O'Neil Thermal DPL printers */ + {10029, /* RL3e */ + 3 * 72, 99 * 72, /* Max paper size */ + 1, 1, /* Min paper size */ + DPL_RES_203_203, /* Resolutions */ + DPL_RES_203_203, + DPL_RES_203_203, + 'G', + 'A', + 'E', + }, +/* Datamax-O'Neil Thermal DPL printers */ + {10030, /* RL4e */ + 4 * 72, 99 * 72, /* Max paper size */ + 1, 1, /* Min paper size */ + DPL_RES_203_203, /* Resolutions */ + DPL_RES_203_203, + DPL_RES_203_203, + 'G', + 'A', + 'E', + }, +}; + +static const stp_parameter_t the_parameters[] = { + { + "PageSize", N_("Page Size"), "Color=No,Category=Basic Printer Setup", + N_("Size of the paper being printed to"), + STP_PARAMETER_TYPE_STRING_LIST, STP_PARAMETER_CLASS_CORE, + STP_PARAMETER_LEVEL_BASIC, 1, 1, STP_CHANNEL_NONE, 1, 0}, + { + "Resolution", N_("Resolution"), "Color=No,Category=Basic Printer Setup", + N_("Resolution of the print"), + STP_PARAMETER_TYPE_STRING_LIST, STP_PARAMETER_CLASS_FEATURE, + STP_PARAMETER_LEVEL_BASIC, 1, 1, STP_CHANNEL_NONE, 1, 0}, + { + "PrintingMode", N_("Printing Mode"), "Color=Yes,Category=Core Parameter", + N_("Printing Output Mode"), + STP_PARAMETER_TYPE_STRING_LIST, STP_PARAMETER_CLASS_CORE, + STP_PARAMETER_LEVEL_BASIC, 1, 1, STP_CHANNEL_NONE, 1, 0 + }, +#ifdef FIXME + { + "Orientation", N_("Orientation"), "Color=No,Category=Basic Printer Setup", + N_("Orientation, Portrait, Landscape, Upside Down, Seascape"), + STP_PARAMETER_TYPE_STRING_LIST, STP_PARAMETER_CLASS_FEATURE, + STP_PARAMETER_LEVEL_BASIC, 1, 1, STP_CHANNEL_NONE, 1, 0, + }, +#endif + { + "LabelSeparator", N_("Media Index Type"), + "Color=No,Category=Basic Printer Setup", + N_("Gap, Notch, Hole, Black Mark, Continuous"), + STP_PARAMETER_TYPE_STRING_LIST, STP_PARAMETER_CLASS_FEATURE, + STP_PARAMETER_LEVEL_BASIC, 1, 1, STP_CHANNEL_NONE, 1, 0, + }, + { + "Darkness", N_("Darkness"), "Color=No,Category=Basic Printer Setup", + N_("Darkness Adjust, from 0 to 30"), + STP_PARAMETER_TYPE_INT, STP_PARAMETER_CLASS_FEATURE, + STP_PARAMETER_LEVEL_BASIC, 0, 1, STP_CHANNEL_NONE, 1, 0}, + { + "Speed", N_("Print Speed"), "Color=No,Category=Basic Printer Setup", + N_("Speed Adjust"), + STP_PARAMETER_TYPE_STRING_LIST, STP_PARAMETER_CLASS_FEATURE, + STP_PARAMETER_LEVEL_BASIC, 1, 1, STP_CHANNEL_NONE, 0, 0}, +}; + +static const int the_parameter_count = + sizeof (the_parameters) / sizeof (const stp_parameter_t); + +typedef struct +{ + const stp_parameter_t param; + double min; + double max; + double defval; + int color_only; +} float_param_t; + +static const float_param_t float_parameters[] = { + { + { + "HorizOffset", N_("Horizontal Offset"), + "Color=No,Category=Basic Output Adjustment", + N_("Adjust horizontal position"), + STP_PARAMETER_TYPE_DOUBLE, STP_PARAMETER_CLASS_OUTPUT, + STP_PARAMETER_LEVEL_ADVANCED3, 1, 1, STP_CHANNEL_NONE, 1, 0, + }, 0.0, 4.0, 0.0, 0}, + { + { + "VertOffset", N_("Vertical Offset"), + "Color=No,Category=Basic Output Adjustment", + N_("Adjust vertical position"), + STP_PARAMETER_TYPE_DOUBLE, STP_PARAMETER_CLASS_OUTPUT, + STP_PARAMETER_LEVEL_ADVANCED3, 1, 1, STP_CHANNEL_NONE, 1, 0, + }, 0.0, 10.0, 0.0, 0}, + { + { + "Present", N_("Present Distance"), + "Color=No,Category=Basic Output Adjustment", + N_("Presnt Distance, 0.0 advances the default."), + STP_PARAMETER_TYPE_DOUBLE, STP_PARAMETER_CLASS_FEATURE, + STP_PARAMETER_LEVEL_BASIC, 1, 1, STP_CHANNEL_NONE, 1, 0, + }, 0.0, 10.0, 0.0, 0}, +}; + +static const int float_parameter_count = + sizeof (float_parameters) / sizeof (const float_param_t); + +/* + * Convert a value into it's option name + */ + +static const char * +dpl_val_to_string (int code, /* I: Code */ + const dpl_t * options, /* I: Options */ + int num_options) /* I: Num options */ +{ + + int i; + const char *string = NULL; + + /* + * Look up the code in the table and convert to the string. + */ + + for (i = 0; i < num_options; i++) + { + if (code == options[i].dpl_code) + { + string = options[i].dpl_name; + break; + } + } + + stp_deprintf (STP_DBG_DPL, "Code: %d, String: %s\n", code, string); + + return (string); +} + +static const char * +dpl_val_to_text (int code, /* I: Code */ + const dpl_t * options, /* I: Options */ + int num_options) /* I: Num options */ +{ + + int i; + const char *string = NULL; + + /* + * Look up the code in the table and convert to the string. + */ + + for (i = 0; i < num_options; i++) + { + if (code == options[i].dpl_code) + { + string = gettext (options[i].dpl_text); + break; + } + } + + stp_deprintf (STP_DBG_DPL, "Code: %d, String: %s\n", code, string); + + return (string); +} + +/* + * dpl_get_model_capabilities() - Return struct of model capabilities + */ + +static const dpl_cap_t * /* O: Capabilities */ +dpl_get_model_capabilities (int model) /* I: Model */ +{ + int i; + int models = sizeof (dpl_model_capabilities) / sizeof (dpl_cap_t); + for (i = 0; i < models; i++) + { + if (dpl_model_capabilities[i].model == model) + { + return &(dpl_model_capabilities[i]); + } + } + stp_erprintf ("dpl: model %d not found in capabilities list.\n", model); + return &(dpl_model_capabilities[0]); +} + +/* + * Determine the current resolution + */ + +static void +dpl_describe_resolution (const stp_vars_t * v, int *x, int *y) +{ + int i; + const char *resolution = stp_get_string_parameter (v, "Resolution"); + + *x = -1; + *y = -1; + if (resolution) + { + for (i = 0; i < NUM_RESOLUTIONS; i++) + { + if (!strcmp (resolution, dpl_resolutions[i].dpl_name)) + { + *x = dpl_resolutions[i].p0; + *y = dpl_resolutions[i].p1; + } + } + } + if (*x != *y) { + if (*x > *y) { + *y = *x; + } else { + *x = *y; + } + } +} + +int +dpl_get_multiplier (const stp_vars_t * v) +{ + int x, y, multiplier; + int i; + int max_dpi; + int model = stp_get_model_id (v); + const dpl_cap_t *caps = dpl_get_model_capabilities (model); + + for (i = 0; i < NUM_RESOLUTIONS; i++) + { + if (caps->max_resolution == dpl_resolutions[i].dpl_code) + { + max_dpi = dpl_resolutions[i].p0; + } + } + + dpl_describe_resolution (v, &x, &y); + + if (x == max_dpi) + multiplier = 1; + else + multiplier = 2; + + return multiplier; +} + +#ifdef FIXME +/* + * Orientation support - modes available + * Note that the internal names MUST match those in cups/genppd.c else the + * PPD files will not be generated correctly + */ + +static const stp_param_string_t orientation_types[] = { + {"Portrait", N_("Portrait")}, + {"Landscape", N_("Landscape")}, + {"UpsideDown", N_("Reverse Portrait")}, + {"Seascape", N_("Reverse Landscape")}, +}; + +#define NUM_ORIENTATION (sizeof (orientation_types) / sizeof (stp_param_string_t)) +#endif + +/* + * Label Separator Support for D-O printers, modes available + */ + +static const stp_param_string_t label_separator_types[] = { + {"IGNORE", N_("Printer Setting")}, + {"GAP", N_("Gap")}, + {"NOTCH", N_("Notch")}, + {"HOLE", N_("Hole")}, + {"MARK", N_("Black Mark")}, + {"CONTINUOUS", N_("Continuous")}, +}; + +#define NUM_LABEL_SEPARATOR (sizeof (label_separator_types) / sizeof (stp_param_string_t)) + +/* + * 'dpl_papersize_valid()' - Is the paper size valid for this printer. + */ + +static int +dpl_papersize_valid (const stp_papersize_t * pt, int model) +{ + const dpl_cap_t *caps = dpl_get_model_capabilities (model); + unsigned int pwidth = pt->width; + unsigned int pheight = pt->height; + +/* + * Is it a valid name? + */ + + if (strlen (pt->name) <= 0) + return (0); + +/* + * We are allowed custom paper sizes. Check that the size is within + * limits. Check that the name contains d-o if this is the + * Datamax O'Neil label printer and not custom paper + */ + + if (pwidth <= caps->custom_max_width && + pheight <= caps->custom_max_height && + (pheight >= caps->custom_min_height || pheight == 0) && + (pwidth >= caps->custom_min_width || pwidth == 0)) + { + if (strcmp (pt->name, "Custom")) + { + if (NULL != strstr (pt->name, "d-o")) + { + return (1); + } + else + { + return (0); + } + } + } + + return (0); +} + +/* + * 'dpl_parameters()' - Return the parameter values for the given parameter. + */ + +static stp_parameter_list_t +dpl_list_parameters (const stp_vars_t * v) +{ + stp_parameter_list_t *ret; + int i; + + ret = stp_parameter_list_create (); + for (i = 0; i < the_parameter_count; i++) + stp_parameter_list_add_param (ret, &(the_parameters[i])); + for (i = 0; i < float_parameter_count; i++) + stp_parameter_list_add_param (ret, &(float_parameters[i].param)); + return ret; +} + +static void +dpl_parameters (const stp_vars_t * v, const char *name, + stp_parameter_t * description) +{ + int model = stp_get_model_id (v); + int i; + const dpl_cap_t *caps; + description->p_type = STP_PARAMETER_TYPE_INVALID; + + if (name == NULL) + return; + + stp_deprintf (STP_DBG_DPL, "dpl_parameters(): Name = %s\n", name); + + caps = dpl_get_model_capabilities (model); + + stp_deprintf (STP_DBG_DPL, "Printer model = %d\n", model); + stp_deprintf (STP_DBG_DPL, "PageWidth = %d, PageHeight = %d\n", + caps->custom_max_width, caps->custom_max_height); + stp_deprintf (STP_DBG_DPL, "MinPageWidth = %d, MinPageHeight = %d\n", + caps->custom_min_width, caps->custom_min_height); + stp_deprintf (STP_DBG_DPL, "Resolutions: %d\n", caps->resolutions); + + for (i = 0; i < the_parameter_count; i++) + if (strcmp (name, the_parameters[i].name) == 0) + { + stp_fill_parameter_settings (description, &(the_parameters[i])); + break; + } + description->deflt.str = NULL; + + for (i = 0; i < float_parameter_count; i++) + if (strcmp (name, float_parameters[i].param.name) == 0) + { + stp_fill_parameter_settings (description, + &(float_parameters[i].param)); + description->deflt.dbl = float_parameters[i].defval; + description->bounds.dbl.upper = float_parameters[i].max; + description->bounds.dbl.lower = float_parameters[i].min; + break; + } + + if (strcmp (name, "PageSize") == 0) + { + int papersizes = stp_known_papersizes (); + description->bounds.str = stp_string_list_create (); + for (i = 0; i < papersizes; i++) + { + const stp_papersize_t *pt = stp_get_papersize_by_index (i); + if (strlen (pt->name) > 0 && dpl_papersize_valid (pt, model)) + stp_string_list_add_string (description->bounds.str, + pt->name, gettext (pt->text)); + } + description->deflt.str = + stp_string_list_param (description->bounds.str, 0)->name; + } + else if (strcmp (name, "Resolution") == 0) + { + description->bounds.str = stp_string_list_create (); + stp_string_list_add_string (description->bounds.str, "None", + _("Default")); + description->deflt.str = + dpl_val_to_string (caps->max_resolution, dpl_resolutions, + NUM_RESOLUTIONS); + for (i = 0; i < NUM_RESOLUTIONS; i++) + if (caps->resolutions & dpl_resolutions[i].dpl_code) + { + stp_string_list_add_string + (description->bounds.str, + dpl_val_to_string (dpl_resolutions[i].dpl_code, + dpl_resolutions, NUM_RESOLUTIONS), + dpl_val_to_text (dpl_resolutions[i].dpl_code, + dpl_resolutions, NUM_RESOLUTIONS)); + } + } + else if (strcmp(name, "PrintingMode") == 0) + { + description->bounds.str = stp_string_list_create(); + stp_string_list_add_string + (description->bounds.str, "BW", _("Black and White")); + description->deflt.str = + stp_string_list_param(description->bounds.str, 0)->name; + } +#ifdef FIXME + else if (strcmp (name, "Orientation") == 0) + { + description->bounds.str = stp_string_list_create (); + description->deflt.str = orientation_types[0].name; + for (i = 0; i < NUM_ORIENTATION; i++) + { + stp_string_list_add_string (description->bounds.str, + orientation_types[i].name, + gettext (orientation_types[i].text)); + } + } +#endif + else if (strcmp (name, "LabelSeparator") == 0) + { + description->bounds.str = stp_string_list_create (); + description->deflt.str = label_separator_types[0].name; + for (i = 0; i < NUM_LABEL_SEPARATOR; i++) + { + stp_string_list_add_string (description->bounds.str, + label_separator_types[i].name, + gettext (label_separator_types[i]. + text)); + } + } + else if (strcmp (name, "Darkness") == 0) + { + description->deflt.integer = -1; + description->bounds.integer.lower = 0; + description->bounds.integer.upper = 30; + } + else if (strcmp (name, "Speed") == 0) + { + description->bounds.str = stp_string_list_create (); + stp_string_list_add_string (description->bounds.str, "None", + _("Use Current Setting")); + stp_string_list_add_string (description->bounds.str, "Default", + _("Use Default Setting")); + description->deflt.str = "None"; + for (i = 0; i < NUM_SPEEDS; i++) + { + stp_string_list_add_string (description->bounds.str, + dpl_speeds[i].dpl_name, + gettext (dpl_speeds[i]. + dpl_text)); + } + } + else if (strcmp (name, "HorizOffset") == 0 || + strcmp (name, "VertOffset") == 0 || strcmp (name, "Present") == 0) + { + description->is_active = 1; + } +} + + +/* + * 'dpl_imageable_area()' - Return the imageable area of the page. + */ +static void +internal_imageable_area (const stp_vars_t * v, /* I */ + int *left, /* O - Left position in points */ + int *right, /* O - Right position in points */ + int *bottom, /* O - Bottom position in points */ + int *top) /* O - Top position in points */ +{ + int width, height; /* Size of page */ + + stp_default_media_size (v, &width, &height); + + *left = 0; + *right = width; + *top = 0; + *bottom = height; +} + +static void +dpl_imageable_area (const stp_vars_t * v, /* I */ + int *left, /* O - Left position in points */ + int *right, /* O - Right position in points */ + int *bottom, /* O - Bottom position in points */ + int *top) /* O - Top position in points */ +{ + internal_imageable_area (v, left, right, bottom, top); +} + +static void +dpl_limit (const stp_vars_t * v, /* I */ + int *width, int *height, int *min_width, int *min_height) +{ + const dpl_cap_t *caps = dpl_get_model_capabilities (stp_get_model_id (v)); + *width = caps->custom_max_width; + *height = caps->custom_max_height; + *min_width = caps->custom_min_width; + *min_height = caps->custom_min_height; +} + +static const char * +dpl_describe_output (const stp_vars_t * v) +{ + return "Grayscale"; +} + +static void +pcx_header (stp_vars_t * v, stp_image_t * image) +{ + unsigned short height; + unsigned short right; + unsigned short top; /* y = 0 is at bottom */ + unsigned short bytes; + short xdpi; + int *xdpi_p = (int *) (&xdpi); + short ydpi; + int *ydpi_p = (int *) (&ydpi); + int n; + const short zero = 0; + + stp_putc (10, v); /* Signature */ + stp_putc (5, v); /* Version */ + stp_putc (1, v); /* RLE encoding */ + stp_putc (1, v); /* bits per pixel */ + + /* Get resolutions */ + dpl_describe_resolution (v, xdpi_p, ydpi_p); + + bytes = (xdpi * 4 + 7 ) / 8; /* must be an even number */ + if (bytes != (bytes & 0xfffe)) + bytes++; + + height = stp_image_height (image); + + /* + * Convert image size to printer resolution and setup the page for printing... + */ + + right = 4 * xdpi - 1; + top = height - 1; + + /* send image start and end positions */ + stp_zfwrite ((const char *) &zero, 2, 1, v); + stp_zfwrite ((const char *) &zero, 2, 1, v); + stp_zfwrite ((const char *) &right, 2, 1, v); + stp_zfwrite ((const char *) &top, 2, 1, v); + + /* send resolutions */ + stp_zfwrite ((const char *) &xdpi, 2, 1, v); + stp_zfwrite ((const char *) &ydpi, 2, 1, v); + + /* send palette and reserved byte */ + for (n = 0; n < 3; n++) + stp_putc (0, v); + for (n = 0; n < 45; n++) + stp_putc (0xff, v); + stp_putc (0, v); + + stp_putc (1, v); /* number of planes, monochrome */ + + stp_zfwrite ((const char *) &bytes, 2, 1, v); + + stp_putc (1, v); /* monochrome */ + stp_putc (0, v); + + stp_putc (0, v); /* imagee size */ + stp_putc (0, v); + stp_putc (0, v); + stp_putc (0, v); + + for (n = 0; n < 54; n++) + stp_putc (0, v); /* padding */ +} + +/* + * 'dpl_print()' - Print an image to an HP printer. + */ + +static void +dpl_printfunc (stp_vars_t * v, int height) +{ + unsigned char *black = stp_dither_get_channel (v, STP_ECOLOR_K, 0); + + dpl_pcx (v, black, (height + 7) / 8, 1); +} + +static double +get_double_param (stp_vars_t * v, const char *param) +{ + if (param && stp_check_float_parameter (v, param, STP_PARAMETER_ACTIVE)) + return stp_get_float_parameter (v, param); + else + return 1.0; +} + +static int +dpl_do_print (stp_vars_t * v, stp_image_t * image) +{ + dpl_privdata_t privdata; + int status = 1; +#ifdef FIXME + const char *orientation_mode = stp_get_string_parameter (v, "Orientation"); +#endif + const char *label_separator_mode = + stp_get_string_parameter (v, "LabelSeparator"); + double h_offset = get_double_param (v, "HorizOffset"); + double v_offset = get_double_param (v, "VertOffset"); + double present = get_double_param (v, "Present"); + int y; /* Looping vars */ + int xdpi, ydpi; /* Resolution */ + int multiplier; + unsigned char *black; /* Black bitmap data */ + unsigned zero_mask; + int image_height; + int image_width; + int model = stp_get_model_id (v); + const dpl_cap_t *caps = dpl_get_model_capabilities (model); + const char *speed = stp_get_string_parameter(v, "Speed"); + + if (!stp_verify (v)) + { + stp_eprintf (v, "Print options not verified; cannot print.\n"); + return 0; + } + + /* + * Setup a read-only pixel region for the entire image... + */ + + stp_image_init (image); + + stp_set_string_parameter (v, "ColorCorrection", "None"); +#ifdef TESTING + stp_set_float_parameter (v, "Brightness", 1.0); + stp_set_float_parameter (v, "Contrast", 1.0); + stp_set_float_parameter (v, "Gamma", 1.0); +#endif + /* + * Figure out the output resolution... + */ + + dpl_describe_resolution (v, &xdpi, &ydpi); + + stp_deprintf (STP_DBG_DPL, "dpl: resolution=%dx%d\n", xdpi, ydpi); + if (xdpi <= 0 || ydpi <= 0) + { + stp_eprintf (v, "No resolution found; cannot print.\n"); + return 0; + } + + image_height = stp_image_height (image); + image_width = stp_image_width (image); + +#ifdef FIXME + privdata.orientation = 0; + if ((strncmp (orientation_mode, "Landscape", 9) == 0)) + privdata.orientation = 1; + else if ((strncmp (orientation_mode, "UpsideDown", 10) == 0)) + privdata.orientation = 2; + else if ((strncmp (orientation_mode, "Seascape", 8) == 0)) + privdata.orientation = 3; +#endif + + /* + * Label Separator mode + */ + privdata.label_separator = 0; + if ((strncmp (label_separator_mode, "GAP", 3) == 0)) + privdata.label_separator = 1; + else if ((strncmp (label_separator_mode, "NOTCH", 5) == 0)) + privdata.label_separator = 1; + else if ((strncmp (label_separator_mode, "HOLE", 4) == 0)) + privdata.label_separator = 1; + else if ((strncmp (label_separator_mode, "MARK", 4) == 0)) + privdata.label_separator = 2; + else if ((strncmp (label_separator_mode, "CONTINUOUS", 10) == 0)) + privdata.label_separator = 3; + + /* + * Print Offsets + */ + privdata.h_offset = (int) (h_offset * 100); /* in 0.01 of an inch */ + privdata.v_offset = (int) (v_offset * 100); /* in 0.01 of an inch */ + + privdata.present = (int) (present * 100.0); /* in 0.01 of an inch */ + + /* + * Darkness Mode + */ + if (-1 != (privdata.darkness = stp_get_int_parameter (v, "Darkness"))) + { + if (0 == privdata.darkness) + { + privdata.darkness = 10; /* default */ + } + } + + /* + * Speed Mode + */ + privdata.speed = 0; + if (0 != strcmp("None", speed)) + { + if (0 == strcmp("Default", speed)) + { + privdata.speed = (int) caps->default_speed; + } + else + { + int i; + for (i = 0; i < NUM_SPEEDS; i++) + { + if (0 == strcmp(dpl_speeds[i].dpl_name, speed)) + { + privdata.speed = dpl_speeds[i].dpl_code; + break; + } + } + if (caps->min_speed > (char) (privdata.speed)) + { + privdata.speed = caps->min_speed; + } + else + { + if (caps->max_speed < (char) (privdata.speed)) + { + privdata.speed = caps->max_speed; + } + } + } + } + + /* workaround for printer bug */ + for (y=0; y<64; y++) + stp_putc (0, v); + + /* + * Send DPL initialization commands... + */ + stp_puts ("\002n\r", v); /* set Imperial units */ + + /* Max page length */ + if (image_height / ydpi > 4) + { + stp_zprintf (v, "\002M%04i\r", + 300 * image_height / ydpi + (3 * privdata.v_offset)); + } + else + { + stp_zprintf (v, "\002M%04i\r", 1200 + (3 * privdata.v_offset)); + } + /* set Label Width */ + stp_zprintf (v, "\002KcLW%04i\r", + 100 * image_width / xdpi + privdata.h_offset); + if (0 != privdata.label_separator) + { + if (1 == privdata.label_separator) + { + stp_puts ("\002e\r", v); /* edge mode */ + } + else if (2 == privdata.label_separator) + { + stp_puts ("\002r\r", v); /* Mark mode */ + } + else + { + stp_zprintf (v, "\002c%04i\r", 100 * /* Continuous mode */ + image_height / ydpi + privdata.v_offset); + } + } + if (privdata.darkness > -1) + { + stp_zprintf (v, "\002KZH%02i\r", privdata.darkness); + } + if (privdata.speed > 0) + { + stp_zprintf (v, "\002KZP%c\r", privdata.speed); + } + stp_zprintf (v, "\002Kf%04i\r", privdata.present); + stp_puts ("\002IDPcups0\r", v); /* Save PCX file */ + pcx_header (v, image); + + + stp_deprintf (STP_DBG_DPL, "Normal init\n"); + + /* + * Allocate memory for the raster data... + */ + + black = stp_malloc ((image_width + 7) / 8); + + stp_set_string_parameter (v, "STPIOutputType", "Grayscale"); + + /* set up for very fast dithering as default */ + stp_set_string_parameter (v, "DitherAlgorithm", "VeryFast"); + + stp_dither_init (v, image, image_width, xdpi, ydpi); + + stp_dither_add_channel (v, black, STP_ECOLOR_K, 0); + stp_channel_set_black_channel (v, STP_ECOLOR_K); + + stp_channel_set_density_adjustment (v, STP_ECOLOR_K, 0, + get_double_param (v, "BlackDensity") * + 1); + + (void) stp_color_init (v, image, 65536); + + stp_allocate_component_data (v, "Driver", NULL, NULL, &privdata); + + for (y = 0; y < image_height; y++) + { + if (stp_color_get_row (v, image, y, &zero_mask)) + { + status = 2; + break; + } + stp_dither (v, y, 0, 0, NULL); + dpl_printfunc (v, image_width); + } + + stp_puts ("\r\002L\r", v); /* enter Label Formatting mode */ + multiplier = dpl_get_multiplier (v); /* dot multiplyer */ + stp_zprintf (v, "D%1i%1i\r", multiplier, multiplier); + stp_puts ("R0000\r", v); /* 0 offset, offset handled below */ + stp_puts ("A2\r", v); /* transparent mode */ + /* load graphic */ + stp_zprintf (v, "1Y11000%04i%04icups0\r", privdata.v_offset, + privdata.h_offset); + stp_puts ("Q0001\r", v); /* one label */ + stp_puts ("E\r", v); /* print now */ + stp_puts ("\002xDGcups0\r", v); /* delete graphic */ +#if 0 + stp_puts ("\002zD\r", v); /* reclaim space */ +#endif + + stp_image_conclude (image); + + /* + * Cleanup... + */ + + if (black != NULL) + stp_free (black); + + return status; +} + +static int +dpl_print (const stp_vars_t * v, stp_image_t * image) +{ + int status; + stp_vars_t *nv = stp_vars_create_copy (v); + stp_prune_inactive_options (nv); + status = dpl_do_print (nv, image); + stp_vars_destroy (nv); + return status; +} + +static const stp_printfuncs_t print_dpl_printfuncs = { + dpl_list_parameters, + dpl_parameters, + stp_default_media_size, + dpl_imageable_area, + dpl_imageable_area, + dpl_limit, + dpl_print, + dpl_describe_resolution, + dpl_describe_output, + stp_verify_printer_params, + NULL, + NULL, + NULL +}; + + +static void +dpl_pcx (stp_vars_t * v, /* I - Print file or command */ + unsigned char *short_line, /* I - Output bitmap data */ + int height, /* I - Height of bitmap data */ + int last_plane) /* I - True if this is the last plane */ +{ + unsigned char *line; + unsigned char *data; + unsigned char stored; + int add_bytes = 0; + int count = 0; + int in = 0; + int out = 0; + int xdpi, ydpi; + int model = stp_get_model_id (v); + const dpl_cap_t *caps = dpl_get_model_capabilities (model); + int i; + int max_dpi; + int dpi_adjust; + + /* Each line has to be 4 inches long */ + dpl_describe_resolution (v, &xdpi, &ydpi); + + for (i = 0; i < NUM_RESOLUTIONS; i++) + { + if (caps->max_resolution == dpl_resolutions[i].dpl_code) + { + max_dpi = dpl_resolutions[i].p0; + } + if (caps->resolution_adjust == dpl_resolutions[i].dpl_code) + { + dpi_adjust = dpl_resolutions[i].p0; + } + } + + if (xdpi == max_dpi) + { + add_bytes = ((xdpi * 4) + 7) / 8 - height; + } + else + { + add_bytes = ((dpi_adjust * 4) + 7) / 8 - height; + } + + /* allocate 4 inch input buffer */ + line = (unsigned char *) stp_malloc (height + add_bytes); + /* allocate output buffer, worst case */ + data = (unsigned char *) stp_malloc ((height + add_bytes) * 2); + + /* invert data, cups makes white 1 and black 0, printer wants the opposite */ + for (in = 0; in < height; in++) + { + line[in] = 0xff ^ short_line[in]; + } + + /* pad to 4 inches */ + for (in = height; in < (height + add_bytes); in++) + { + line[in] = 0xff; + } + + in = 0; + while (in < (height + add_bytes)) + { + stored = line[in]; /* save the value */ + for (count = 1; in + count < (height + add_bytes) && line[in + count] == stored && count < 63; count++); /* count the run */ + + /* test to see if we need to make a run of one because the data value + has the two top bits set and see if we actually have a run */ + if (stored > 191 || count > 1) + { + data[out++] = count | 0xc0; /* mask to indicate a run */ + data[out++] = stored; /* output the value */ + } + else /* not a run */ + { + data[out++] = stored; /* output the value */ + } + in += count; + } + stp_zfwrite ((const char *) data, out, 1, v); + stp_free (line); + stp_free (data); +} + + +static stp_family_t print_dpl_module_data = { + &print_dpl_printfuncs, + NULL +}; + + +static int +print_dpl_module_init (void) +{ + return stp_family_register (print_dpl_module_data.printer_list); +} + + +static int +print_dpl_module_exit (void) +{ + return stp_family_unregister (print_dpl_module_data.printer_list); +} + + +/* Module header */ +#define stp_module_version print_dpl_LTX_stp_module_version +#define stp_module_data print_dpl_LTX_stp_module_data + +stp_module_version_t stp_module_version = { 0, 0 }; + +stp_module_t stp_module_data = { + "dpl", + VERSION, + "DPL family driver", + STP_MODULE_CLASS_FAMILY, + NULL, + print_dpl_module_init, + print_dpl_module_exit, + (void *) &print_dpl_module_data +}; diff --git a/src/main/print-escp2-data.c b/src/main/print-escp2-data.c index 8e7d6e3..87a21fc 100644 --- a/src/main/print-escp2-data.c +++ b/src/main/print-escp2-data.c @@ -1,5 +1,4 @@ /* - * "$Id: print-escp2-data.c,v 1.275 2013/12/14 19:36:29 rlk Exp $" * * Print plug-in EPSON ESC/P2 driver for the GIMP. * diff --git a/src/main/print-escp2.c b/src/main/print-escp2.c index 4619722..6b00c6f 100644 --- a/src/main/print-escp2.c +++ b/src/main/print-escp2.c @@ -1,5 +1,4 @@ /* - * "$Id: print-escp2.c,v 1.444 2015/09/09 23:57:32 speachy Exp $" * * Print plug-in EPSON ESC/P2 driver for the GIMP. * @@ -2249,7 +2248,7 @@ escp2_parameters(const stp_vars_t *v, const char *name, _("Full Manual Control")); stp_string_list_add_string(description->bounds.str, "Auto", _("Automatic Setting Control")); - description->deflt.str = "None"; /* so CUPS and Foomatic don't break */ + description->deflt.str = "None"; /* so CUPS doesn't break */ } else if (strcmp(name, "PageSize") == 0) { @@ -3431,6 +3430,7 @@ setup_inks(stp_vars_t *v) if (drops->dropsizes[2] > 0 && drops->numdropsizes < 3) drops->numdropsizes = 3; } + STPI_ASSERT(drops->numdropsizes < (1 << escp2_bits(v)), v); for (i = drops->numdropsizes - 1; i >= 0; i--) { if (drops->dropsizes[i] > 0) diff --git a/src/main/print-escp2.h b/src/main/print-escp2.h index 976ffd6..0cb848f 100644 --- a/src/main/print-escp2.h +++ b/src/main/print-escp2.h @@ -1,6 +1,4 @@ /* - * "$Id: print-escp2.h,v 1.140 2014/01/23 13:22:41 rlk Exp $" - * * Print plug-in EPSON ESC/P2 driver for the GIMP. * * Copyright 1997-2000 Michael Sweet (mike@easysw.com) and @@ -623,6 +621,3 @@ extern void stpi_escp2_terminate_page(stp_vars_t *v); #endif #endif /* GUTENPRINT_INTERNAL_ESCP2_H */ -/* - * End of "$Id: print-escp2.h,v 1.140 2014/01/23 13:22:41 rlk Exp $". - */ diff --git a/src/main/print-lexmark.c b/src/main/print-lexmark.c index d8d3dcd..dcf9cbf 100644 --- a/src/main/print-lexmark.c +++ b/src/main/print-lexmark.c @@ -1,6 +1,5 @@ /* - * "$Id: print-lexmark.c,v 1.165 2015/09/09 23:57:32 speachy Exp $" * * Print plug-in Lexmark driver for the GIMP. * diff --git a/src/main/print-list.c b/src/main/print-list.c index 75b5b08..8ea2c0f 100644 --- a/src/main/print-list.c +++ b/src/main/print-list.c @@ -1,5 +1,4 @@ /* - * "$Id: print-list.c,v 1.27 2014/01/04 00:31:38 rlk Exp $" * * Gutenprint list functions. A doubly-linked list implementation, * with callbacks for freeing, sorting, and retrieving nodes by name diff --git a/src/main/print-olympus.c b/src/main/print-olympus.c index bfc4890..5af9d28 100644 --- a/src/main/print-olympus.c +++ b/src/main/print-olympus.c @@ -1,5 +1,4 @@ /* - * "$Id: print-olympus.c,v 1.227 2016/01/14 04:56:58 speachy Exp $" * * Print plug-in DyeSub driver (formerly Olympus driver) for the GIMP. * @@ -1327,10 +1326,10 @@ LIST(dyesub_resolution_list_t, res_334dpi_list, dyesub_resolution_t, res_334dpi) static const dyesub_pagesize_t updr150_page[] = { - { "w288h432", "2UPC-153 (4x6)", PT(1382,334)+1, PT(2048,334)+1, 0, 0, 0, 0, DYESUB_LANDSCAPE}, - { "B7", "2UPC-154 (3.5x5)", PT(1210,334)+1, PT(1728,334)+1, 0, 0, 0, 0, DYESUB_LANDSCAPE}, - { "w360h504", "2UPC-155 (5x7)", PT(1728,334)+1, PT(2380,334)+1, 0, 0, 0, 0, DYESUB_PORTRAIT}, - { "w432h576", "2UPC-156 (6x8)", PT(2048,334)+1, PT(2724,334)+1, 0, 0, 0, DYESUB_PORTRAIT}, + { "w288h432", "4x6", PT(1382,334)+1, PT(2048,334)+1, 0, 0, 0, 0, DYESUB_LANDSCAPE}, + { "B7", "3.5x5", PT(1210,334)+1, PT(1728,334)+1, 0, 0, 0, 0, DYESUB_LANDSCAPE}, + { "w360h504", "5x7", PT(1728,334)+1, PT(2380,334)+1, 0, 0, 0, 0, DYESUB_PORTRAIT}, + { "w432h576", "6x8", PT(2048,334)+1, PT(2724,334)+1, 0, 0, 0, DYESUB_PORTRAIT}, }; LIST(dyesub_pagesize_list_t, updr150_page_list, dyesub_pagesize_t, updr150_page); @@ -1474,13 +1473,13 @@ static void updr150_printer_end_func(stp_vars_t *v) /* Sony UP-DR200 */ static const dyesub_pagesize_t updr200_page[] = { - { "w288h432", "2UPC-R204 (4x6)", PT(1382,334)+1, PT(2048,334)+1, 0, 0, 0, 0, DYESUB_LANDSCAPE}, - { "w288h432-div2", "2UPC-R204 (2*2x6)", PT(1382,334)+1, PT(2048,334)+1, 0, 0, 0, 0, DYESUB_LANDSCAPE}, - { "B7", "2UPC-R203 (3.5x5)", PT(1210,334)+1, PT(1728,334)+1, 0, 0, 0, 0, DYESUB_LANDSCAPE}, - { "w360h504", "2UPC-R205 (5x7)", PT(1728,334)+1, PT(2380,334)+1, 0, 0, 0, 0, DYESUB_PORTRAIT}, - { "w360h504-div2", "2UPC-R205 (2*3.5x5)", PT(1728,334)+1, PT(2420,334)+1, 0, 0, 0, 0, DYESUB_PORTRAIT}, - { "w432h576", "2UPC-R206 (6x8)", PT(2048,334)+1, PT(2724,334)+1, 0, 0, 0, DYESUB_PORTRAIT}, - { "w432h576-div2", "2UPC-R206 (2*4x6)", PT(2048,334)+1, PT(2764,334)+1, 0, 0, 0, DYESUB_PORTRAIT}, + { "w288h432", "4x6", PT(1382,334)+1, PT(2048,334)+1, 0, 0, 0, 0, DYESUB_LANDSCAPE}, + { "w288h432-div2", "2x6*2", PT(1382,334)+1, PT(2048,334)+1, 0, 0, 0, 0, DYESUB_LANDSCAPE}, + { "B7", "3.5x5", PT(1210,334)+1, PT(1728,334)+1, 0, 0, 0, 0, DYESUB_LANDSCAPE}, + { "w360h504", "5x7", PT(1728,334)+1, PT(2380,334)+1, 0, 0, 0, 0, DYESUB_PORTRAIT}, + { "w360h504-div2", "3.5x5*2", PT(1728,334)+1, PT(2420,334)+1, 0, 0, 0, 0, DYESUB_PORTRAIT}, + { "w432h576", "6x8", PT(2048,334)+1, PT(2724,334)+1, 0, 0, 0, DYESUB_PORTRAIT}, + { "w432h576-div2", "4x6*2", PT(2048,334)+1, PT(2764,334)+1, 0, 0, 0, DYESUB_PORTRAIT}, }; LIST(dyesub_pagesize_list_t, updr200_page_list, dyesub_pagesize_t, updr200_page); @@ -2828,8 +2827,8 @@ static void mitsu_cpd70k60_printer_init(stp_vars_t *v, unsigned char model) /* Laminate a slightly larger boundary in Matte mode */ stp_put16_be(privdata.w_size, v); stp_put16_be(privdata.h_size + 12, v); - if (model == 0x02) { - stp_putc(0x04, v); /* Matte Lamination forces UltraFine on K60 */ + if (model == 0x02 || model == 0x90) { + stp_putc(0x04, v); /* Matte Lamination forces UltraFine on K60 or K305 */ } else { stp_putc(0x03, v); /* Matte Lamination forces Superfine (or UltraFine) */ } @@ -3036,6 +3035,127 @@ static void kodak305_printer_init(stp_vars_t *v) mitsu_cpd70k60_printer_init(v, 0x90); } +/* Mitsubishi CP-D90D */ +static const dyesub_pagesize_t mitsu_cpd90_page[] = +{ + { "w144h432", "2x6", PT(625,300)+1, PT(1852,300)+1, 0, 0, 0, 0, + DYESUB_LANDSCAPE}, + { "B7", "3.5x5", PT(1076,300)+1, PT(1550,300)+1, 0, 0, 0, 0, + DYESUB_LANDSCAPE}, + { "w288h432", "4x6", PT(1226,300)+1, PT(1852,300)+1, 0, 0, 0, 0, + DYESUB_LANDSCAPE}, + { "w288h432-div2", "2x6*2", PT(1226,300)+1, PT(1852,300)+1, 0, 0, 0, 0, + DYESUB_LANDSCAPE}, + { "w360h504", "5x7", PT(1550,300)+1, PT(2128,300)+1, 0, 0, 0, 0, + DYESUB_PORTRAIT}, + { "w360h360", "5x5", PT(1527,300)+1, PT(1550,300)+1, 0, 0, 0, 0, + DYESUB_LANDSCAPE}, + { "w432h432", "6x6", PT(1827,300)+1, PT(1852,300)+1, 0, 0, 0, 0, + DYESUB_LANDSCAPE}, + { "w432h576", "6x8", PT(1852,300)+1, PT(2428,300)+1, 0, 0, 0, 0, + DYESUB_PORTRAIT}, + { "w432h576-div2", "4x6*2", PT(1852,300)+1, PT(2488,300)+1, 0, 0, 0, 0, + DYESUB_PORTRAIT}, + { "w432h612", "6x8.5", PT(1852,300)+1, PT(2568,300)+1, 0, 0, 0, 0, + DYESUB_PORTRAIT}, + { "w432h648", "6x9", PT(1852,300)+1, PT(2729,300)+1, 0, 0, 0, 0, + DYESUB_PORTRAIT}, +}; + +LIST(dyesub_pagesize_list_t, mitsu_cpd90_page_list, dyesub_pagesize_t, mitsu_cpd90_page); + +static const dyesub_printsize_t mitsu_cpd90_printsize[] = +{ + { "300x300", "w144h432", 625, 1852}, + { "300x300", "B7", 1076, 1550}, + { "300x300", "w288h432", 1226, 1852}, + { "300x300", "w288h432-div2", 1226, 1852}, + { "300x300", "w360h360", 1527, 1550}, + { "300x300", "w360h504", 1550, 2128}, + { "300x300", "w432h432", 1827, 1852}, + { "300x300", "w432h576", 1852, 2428}, + { "300x300", "w432h576-div2", 1852, 2488}, + { "300x300", "w432h612", 1852, 2568}, + { "300x300", "w432h648", 1852, 2729}, +}; + +LIST(dyesub_printsize_list_t, mitsu_cpd90_printsize_list, dyesub_printsize_t, mitsu_cpd90_printsize); + +static void mitsu_cpd90_printer_init(stp_vars_t *v) +{ + /* Start things going */ + stp_putc(0x1b, v); + stp_putc(0x53, v); + stp_putc(0x50, v); + stp_putc(0x30, v); + stp_putc(0x00, v); + stp_putc(0x33, v); + stp_put16_be(privdata.w_size, v); /* Columns */ + stp_put16_be(privdata.h_size, v); /* Rows */ + stp_putc(0x64, v); + stp_putc(0x00, v); + stp_putc(0x00, v); + stp_putc(0x01, v); + stp_putc(0x00, v); + if (strcmp(privdata.pagesize,"w432h576-div2") == 0) + stp_putc(0x01, v); + else + stp_putc(0x00, v); + + if (strcmp(privdata.pagesize,"w432h576-div2") == 0) { + stp_putc(0x04, v); + stp_putc(0xbe, v); + dyesub_nputc(v, 0x00, 14); + } else if (strcmp(privdata.pagesize,"w288h432-div2") == 0) { + stp_putc(0x02, v); + stp_putc(0x65, v); + stp_putc(0x01, v); + stp_putc(0x00, v); + stp_putc(0x00, v); + stp_putc(0x01, v); + dyesub_nputc(v, 0x00, 10); + } else { + dyesub_nputc(v, 0x00, 16); + } + + dyesub_nputc(v, 0x00, 16); + + stp_zfwrite((privdata.laminate->seq).data, 1, + (privdata.laminate->seq).bytes, v); /* Lamination mode */ + stp_putc(0x00, v); /* XXX 0x02 = fine, 0x03 = ultrafine, 0x00 = auto */ + stp_putc(0x00, v); /* XXX 0x01 = no color correction, 0x00 = on */ + stp_putc(0x04, v); + stp_putc(0x04, v); + dyesub_nputc(v, 0x00, 11); + + dyesub_nputc(v, 0x00, 512 - 64); + + /* Second header block */ + stp_putc(0x1b, v); + stp_putc(0x5a, v); + stp_putc(0x54, v); + stp_putc(0x01, v); + stp_putc(0x00, v); + stp_putc(0x09, v); + dyesub_nputc(v, 0x00, 4); + stp_put16_be(privdata.w_size, v); /* Columns */ + stp_put16_be(privdata.h_size, v); /* Rows */ + dyesub_nputc(v, 0x00, 2); + + dyesub_nputc(v, 0x00, 512 - 32); +} + +static void mitsu_cpd90_printer_end(stp_vars_t *v) +{ + /* Wrap it up */ + stp_putc(0x1b, v); + stp_putc(0x42, v); + stp_putc(0x51, v); + stp_putc(0x31, v); + stp_putc(0x00, v); + stp_putc(0x05, v); +} + /* Shinko CHC-S9045 (experimental) */ static const dyesub_pagesize_t shinko_chcs9045_page[] = { @@ -3254,7 +3374,7 @@ LIST(dyesub_printsize_list_t, shinko_chcs1245_printsize_list, dyesub_printsize_t static const laminate_t shinko_chcs1245_laminate[] = { {"PrinterDefault", N_("Printer Default"), {1, "\x01"}}, - {"Glossy", N_("Glossy"), {1, "\x02\0\0\0"}}, + {"Glossy", N_("Glossy"), {1, "\x02"}}, {"GlossyFine", N_("Glossy Fine"), {1, "\x03"}}, {"Matte", N_("Matte"), {1, "\x04"}}, {"MatteFine", N_("Matte Fine"), {1, "\x05"}}, @@ -3650,8 +3770,8 @@ LIST(dyesub_printsize_list_t, dnpds40_printsize_list, dyesub_printsize_t, dnpds4 static const laminate_t dnpds40_laminate[] = { - {"Glossy", N_("Glossy"), {2, "00"}}, - {"Matte", N_("Matte"), {2, "01"}}, + {"Glossy", N_("Glossy"), {3, "000"}}, + {"Matte", N_("Matte"), {3, "001"}}, }; LIST(laminate_list_t, dnpds40_laminate_list, laminate_t, dnpds40_laminate); @@ -3660,7 +3780,7 @@ LIST(laminate_list_t, dnpds40_laminate_list, laminate_t, dnpds40_laminate); static void dnp_printer_start_common(stp_vars_t *v) { /* Configure Lamination */ - stp_zprintf(v, "\033PCNTRL OVERCOAT 00000008000000"); + stp_zprintf(v, "\033PCNTRL OVERCOAT 0000000800000"); stp_zfwrite((privdata.laminate->seq).data, 1, (privdata.laminate->seq).bytes, v); /* Lamination mode */ @@ -4025,6 +4145,7 @@ static const dyesub_pagesize_t dnpsrx1_page[] = { "w288h432", "4x6", PT(1240,300)+1, PT(1920,300)+1, 0, 0, PT(38,300), PT(38,300), DYESUB_LANDSCAPE}, { "w288h432-div2", "2x6*2", PT(1240,300)+1, PT(1920,300)+1, 0, 0, PT(38,300), PT(38,300), DYESUB_LANDSCAPE}, { "w360h504", "5x7", PT(1920,300)+1, PT(2138,300)+1, PT(186,300), PT(186,300), 0, 0, DYESUB_PORTRAIT}, + { "w360h504-div2", "3.5x5*2", PT(1920,300)+1, PT(2176,300)+1, PT(186,300), PT(186,300), 0, 0, DYESUB_PORTRAIT}, { "w432h576", "6x8", PT(1920,300)+1, PT(2436,300)+1, PT(38,300), PT(38,300), 0, 0, DYESUB_PORTRAIT}, { "w432h576-div4", "2x6*4", PT(1920,300)+1, PT(2436,300)+1, PT(38,300), PT(38,300), 0, 0, DYESUB_PORTRAIT}, { "w432h576-div2", "4x6*2", PT(1920,300)+1, PT(2498,300)+1, PT(38,300), PT(38,300), 0, 0, DYESUB_PORTRAIT}, @@ -4042,6 +4163,8 @@ static const dyesub_printsize_t dnpsrx1_printsize[] = { "300x600", "w288h432-div2", 2480, 1920}, { "300x300", "w360h504", 1920, 2138}, { "300x600", "w360h504", 1920, 4276}, + { "300x300", "w360h504-div2", 1920, 2176}, + { "300x600", "w360h504-div2", 1920, 4352}, { "300x300", "w432h576", 1920, 2436}, { "300x600", "w432h576", 1920, 4872}, { "300x300", "w432h576-div4", 1920, 2436}, @@ -4076,6 +4199,8 @@ static void dnpdsrx1_printer_start(stp_vars_t *v) stp_zprintf(v, "02"); } else if (!strcmp(privdata.pagesize, "w360h504")) { stp_zprintf(v, "03"); + } else if (!strcmp(privdata.pagesize, "w360h504-div2")) { + stp_zprintf(v, "22"); } else if (!strcmp(privdata.pagesize, "w432h576")) { stp_zprintf(v, "04"); } else if (!strcmp(privdata.pagesize, "w432h576-div2")) { @@ -4090,6 +4215,15 @@ static void dnpdsrx1_printer_start(stp_vars_t *v) } /* Dai Nippon Printing DS620 */ +static const laminate_t dnpds620_laminate[] = +{ + {"Glossy", N_("Glossy"), {3, "000"}}, + {"Matte", N_("Matte"), {3, "001"}}, + {"MatteLuster", N_("Matte Luster"), {3, "022"}}, +}; + +LIST(laminate_list_t, dnpds620_laminate_list, laminate_t, dnpds620_laminate); + /* Imaging area is wider than print size, we always must supply the printer with the full imaging width. */ static const dyesub_pagesize_t dnpds620_page[] = @@ -4942,7 +5076,7 @@ static const dyesub_cap_t dyesub_model_capabilities[] = }, { /* Mitsubishi CP9550D */ 4103, - &rgb_ink_list, + &bgr_ink_list, &res_346dpi_list, &mitsu_cp9550_page_list, &mitsu_cp9550_printsize_list, @@ -5041,6 +5175,21 @@ static const dyesub_cap_t dyesub_model_capabilities[] = &mitsu_cpd70x_laminate_list, NULL, NULL, NULL, NULL, }, + { /* Mitsubishi CPD90D */ + 4109, + &bgr_ink_list, + &res_300dpi_list, + &mitsu_cpd90_page_list, + &mitsu_cpd90_printsize_list, + SHRT_MAX, + DYESUB_FEATURE_FULL_WIDTH | DYESUB_FEATURE_FULL_HEIGHT, + &mitsu_cpd90_printer_init, &mitsu_cpd90_printer_end, + NULL, NULL, + NULL, NULL, /* No block funcs */ + NULL, NULL, NULL, /* color profile/adjustment is built into printer */ + &mitsu_cpd70x_laminate_list, NULL, NULL, + NULL, NULL, + }, { /* Shinko CHC-S9045 (experimental) */ 5000, &rgb_ink_list, @@ -5191,7 +5340,7 @@ static const dyesub_cap_t dyesub_model_capabilities[] = &dnpds40_plane_init, NULL, NULL, NULL, NULL, NULL, NULL, - &dnpds40_laminate_list, NULL, NULL, + &dnpds620_laminate_list, NULL, NULL, NULL, NULL, }, { /* Citizen CW-01 */ @@ -5977,22 +6126,20 @@ dyesub_print_pixel(stp_vars_t *v, if (dyesub_feature(caps, DYESUB_FEATURE_RGBtoYCBCR)) { /* Convert RGB -> YCbCr (JPEG YCbCr444 coefficients) */ double R, G, B; - double Y, Cr, Cb; R = out[0]; G = out[1]; B = out[2]; - - Y = R * 0.29900 + G * 0.58700 + B * 0.11400; - Cb = R * -0.16874 + G * -0.33126 + B * 0.50000 + 32768; - Cr = R * 0.50000 + G * -0.41869 + B * -0.08131 + 32768; - - ink[0] = Y; - ink[1] = Cb; - ink[2] = Cr; - - /* XXX this is sub-optimal; we compute the full YCbCr - values and throw away 2/3 for each pixel printed - if we are plane or row interleaved */ + + if (i == 0) /* Y */ + ink[i] = R * 0.299 + G * 0.587 + B * 0.114; + else if (i == 1) /* Cb */ + ink[i] = R * -0.168736 + G * -0.331264 + B * 0.5 + 32768; + else if (i == 2) /* Cr */ + ink[i] = R * 0.5 + G * -0.418688 + B * -0.081312 + 32768; + + /* FIXME: Natively support YCbCr "inks" in the + Gutenprint core and allow that as an input + into the dyesub driver. */ } else { ink[i] = out[i]; } @@ -6273,9 +6420,9 @@ dyesub_do_print(stp_vars_t *v, stp_image_t *image) } if (pv.bytes_per_ink_channel > 1) { -#if defined(__LITTLE_ENDIAN) || defined(__LITTLE_ENDIAN__) - pv.byteswap = dyesub_feature(caps, DYESUB_FEATURE_BIGENDIAN); -#elif defined (__BIG_ENDIAN) || defined(__BIG_ENDIAN__) +#if (__BYTE_ORDER == __LITTLE_ENDIAN) + pv.byteswap = dyesub_feature(caps, DYESUB_FEATURE_BIGENDIAN); +#elif (__BYTE_ORDER == __BIG_ENDIAN) pv.byteswap = !dyesub_feature(caps, DYESUB_FEATURE_BIGENDIAN); #else #error "Unable to determine endianness, aborting compilation!" diff --git a/src/main/print-papers.c b/src/main/print-papers.c index fa84f96..b38f103 100644 --- a/src/main/print-papers.c +++ b/src/main/print-papers.c @@ -1,5 +1,4 @@ /* - * "$Id: print-papers.c,v 1.44 2015/09/07 21:57:37 speachy Exp $" * * Print plug-in driver utility functions for the GIMP. * diff --git a/src/main/print-pcl.c b/src/main/print-pcl.c index 7954b9a..0169c8b 100644 --- a/src/main/print-pcl.c +++ b/src/main/print-pcl.c @@ -1,5 +1,4 @@ /* - * "$Id: print-pcl.c,v 1.166 2015/10/26 00:43:07 sletter1 Exp $" * * Print plug-in HP PCL driver for the GIMP. * diff --git a/src/main/print-ps.c b/src/main/print-ps.c index d969596..3596e01 100644 --- a/src/main/print-ps.c +++ b/src/main/print-ps.c @@ -1,5 +1,4 @@ /* - * "$Id: print-ps.c,v 1.105 2012/01/19 13:25:40 m0m Exp $" * * Print plug-in Adobe PostScript driver for the GIMP. * diff --git a/src/main/print-raw.c b/src/main/print-raw.c index 6f4b57d..9af9629 100644 --- a/src/main/print-raw.c +++ b/src/main/print-raw.c @@ -1,5 +1,4 @@ /* - * "$Id: print-raw.c,v 1.47 2015/09/09 23:57:32 speachy Exp $" * * Print plug-in RAW driver for the GIMP. * diff --git a/src/main/print-util.c b/src/main/print-util.c index ca7cef9..400f7b7 100644 --- a/src/main/print-util.c +++ b/src/main/print-util.c @@ -1,5 +1,4 @@ /* - * "$Id: print-util.c,v 1.122 2015/09/09 23:57:32 speachy Exp $" * * Print plug-in driver utility functions for the GIMP. * diff --git a/src/main/print-vars.c b/src/main/print-vars.c index 27d9545..515cb76 100644 --- a/src/main/print-vars.c +++ b/src/main/print-vars.c @@ -1,5 +1,4 @@ /* - * "$Id: print-vars.c,v 1.95 2014/01/04 00:31:38 rlk Exp $" * * Print plug-in driver utility functions for the GIMP. * diff --git a/src/main/print-version.c b/src/main/print-version.c index 1137d34..ca8ac3c 100644 --- a/src/main/print-version.c +++ b/src/main/print-version.c @@ -1,5 +1,4 @@ /* - * "$Id: print-version.c,v 1.8 2005/04/10 23:15:16 rlk Exp $" * * Print plug-in driver utility functions for the GIMP. * diff --git a/src/main/print-weave.c b/src/main/print-weave.c index c17a367..c9f36ff 100644 --- a/src/main/print-weave.c +++ b/src/main/print-weave.c @@ -1,5 +1,4 @@ /* - * "$Id: print-weave.c,v 1.81 2012/05/26 16:03:19 rlk Exp $" * * Softweave calculator for Gutenprint. * diff --git a/src/main/printers.c b/src/main/printers.c index 7effdfb..9722bd4 100644 --- a/src/main/printers.c +++ b/src/main/printers.c @@ -1,5 +1,4 @@ /* - * "$Id: printers.c,v 1.94 2015/07/13 02:18:20 speachy Exp $" * * Print plug-in driver utility functions for the GIMP. * @@ -66,7 +65,6 @@ struct stp_printer char *family; /* Printer family */ char *manufacturer; /* Printer manufacturer */ char *device_id; /* IEEE 1284 device ID */ - char *foomatic_id; /* Foomatic printer ID */ char *comment; /* Comment string, if any */ int model; /* Model number */ int vars_initialized; @@ -136,11 +134,6 @@ stpi_printer_freefunc(void *item) stp_free(printer->comment); printer->comment = NULL; } - if (printer->foomatic_id) - { - stp_free(printer->foomatic_id); - printer->comment = NULL; - } stp_free(printer->long_name); stp_free(printer->family); stp_free(printer); @@ -206,7 +199,8 @@ stp_printer_get_manufacturer(const stp_printer_t *printer) const char * stp_printer_get_foomatic_id(const stp_printer_t *printer) { - return printer->foomatic_id; + stp_erprintf("stp_printer_get_foomatic_id is DEPRECATED\n"); + return NULL; } const char * @@ -287,24 +281,7 @@ stp_get_printer_by_device_id(const char *device_id) const stp_printer_t * stp_get_printer_by_foomatic_id(const char *foomatic_id) { - stp_list_item_t *printer_item; - if (printer_list == NULL) - { - stp_erprintf("No printer drivers found: " - "are STP_DATA_PATH and STP_MODULE_PATH correct?\n"); - stpi_init_printer_list(); - } - if (! foomatic_id || strcmp(foomatic_id, "") == 0) - return NULL; - - printer_item = stp_list_get_start(printer_list); - while (printer_item) - { - if (strcmp(((const stp_printer_t *) stp_list_item_get_data(printer_item))->foomatic_id, - foomatic_id) == 0) - return ((const stp_printer_t *) stp_list_item_get_data(printer_item)); - printer_item = stp_list_item_next(printer_item); - } + stp_erprintf("stp_get_printer_by_foomatic_id is DEPRECATED\n"); return NULL; } @@ -1127,9 +1104,6 @@ stp_printer_create_from_xmltree(stp_mxml_node_t *printer, /* The printer node */ stmp = stp_mxmlElementGetAttr(printer, "deviceid"); if (stmp) outprinter->device_id = stp_strdup(stmp); - stmp = stp_mxmlElementGetAttr(printer, "foomaticid"); - if (stmp) - outprinter->foomatic_id = stp_strdup(stmp); child = printer->child; while (child) diff --git a/src/main/sequence.c b/src/main/sequence.c index 096c0b2..9792181 100644 --- a/src/main/sequence.c +++ b/src/main/sequence.c @@ -1,5 +1,4 @@ /* - * "$Id: sequence.c,v 1.30 2014/01/04 00:31:38 rlk Exp $" * * Sequence data type. This type is designed to be derived from by * the curve and dither matrix types. diff --git a/src/main/string-list.c b/src/main/string-list.c index 337a717..3d39822 100644 --- a/src/main/string-list.c +++ b/src/main/string-list.c @@ -1,5 +1,4 @@ /* - * "$Id: string-list.c,v 1.21 2014/01/04 00:31:38 rlk Exp $" * * Print plug-in driver utility functions for the GIMP. * diff --git a/src/main/xml.c b/src/main/xml.c index fdbeff1..10677c7 100644 --- a/src/main/xml.c +++ b/src/main/xml.c @@ -1,5 +1,4 @@ /* - * "$Id: xml.c,v 1.43 2010/08/04 00:33:57 rlk Exp $" * * XML parser - process Gutenprint XML data with mxml. * diff --git a/src/main/xmlppd.h b/src/main/xmlppd.h index a348d70..a0ca355 100644 --- a/src/main/xmlppd.h +++ b/src/main/xmlppd.h @@ -1,5 +1,4 @@ /* - * "$Id: xmlppd.h,v 1.2 2007/12/24 03:05:52 rlk Exp $" * * Copyright 2007 by Michael R Sweet and Robert Krawitz * diff --git a/src/testpattern/Makefile.am b/src/testpattern/Makefile.am index 7fe813f..b02ac4a 100644 --- a/src/testpattern/Makefile.am +++ b/src/testpattern/Makefile.am @@ -1,4 +1,3 @@ -## $Id: Makefile.am,v 1.29 2015/09/13 15:30:40 rlk Exp $ ## Copyright (C) 2000 Roger Leigh ## ## This program is free software; you can redistribute it and/or modify diff --git a/src/testpattern/Makefile.in b/src/testpattern/Makefile.in index 152eea8..9003446 100644 --- a/src/testpattern/Makefile.in +++ b/src/testpattern/Makefile.in @@ -85,30 +85,28 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(top_srcdir)/scripts/global.mk $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/scripts/mkinstalldirs \ - $(srcdir)/run-testpattern-2.in $(srcdir)/compare-checksums.in \ - testpatterny.h testpatterny.c testpatternl.c \ - $(top_srcdir)/scripts/depcomp $(top_srcdir)/scripts/ylwrap \ - $(top_srcdir)/scripts/test-driver + $(srcdir)/Makefile.am $(srcdir)/run-testpattern-2.in \ + $(srcdir)/compare-checksums.in testpatterny.h testpatterny.c \ + testpatternl.c $(top_srcdir)/scripts/depcomp \ + $(top_srcdir)/scripts/ylwrap $(top_srcdir)/scripts/test-driver @BUILD_TESTPATTERN_TRUE@bin_PROGRAMS = testpattern$(EXEEXT) @BUILD_TESTPATTERN_TRUE@noinst_PROGRAMS = printers$(EXEEXT) \ @BUILD_TESTPATTERN_TRUE@ printer_options$(EXEEXT) subdir = src/testpattern ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/isc-posix.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stp.m4 \ - $(top_srcdir)/m4/stp_cups.m4 $(top_srcdir)/m4/stp_gimp.m4 \ - $(top_srcdir)/m4/stp_option.m4 $(top_srcdir)/m4/stp_release.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/stp.m4 $(top_srcdir)/m4/stp_cups.m4 \ + $(top_srcdir)/m4/stp_gimp.m4 $(top_srcdir)/m4/stp_option.m4 \ + $(top_srcdir)/m4/stp_release.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/scripts/mkinstalldirs +mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = run-testpattern-2 compare-checksums CONFIG_CLEAN_VPATH_FILES = @@ -458,9 +456,6 @@ ENABLE_STATIC = @ENABLE_STATIC@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FIND = @FIND@ -FOOMATIC_CONFIGURE = @FOOMATIC_CONFIGURE@ -FOOMATIC_KITLOAD = @FOOMATIC_KITLOAD@ -FOOMATIC_PPDFILE = @FOOMATIC_PPDFILE@ GENPPD_LIBS = @GENPPD_LIBS@ GIMP2_CFLAGS = @GIMP2_CFLAGS@ GIMP2_LIBS = @GIMP2_LIBS@ @@ -493,9 +488,6 @@ GUTENPRINT_MICRO_VERSION = @GUTENPRINT_MICRO_VERSION@ GUTENPRINT_MINOR_VERSION = @GUTENPRINT_MINOR_VERSION@ GUTENPRINT_RELEASE_VERSION = @GUTENPRINT_RELEASE_VERSION@ GUTENPRINT_VERSION = @GUTENPRINT_VERSION@ -IJS_CFLAGS = @IJS_CFLAGS@ -IJS_CONFIG = @IJS_CONFIG@ -IJS_LIBS = @IJS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -516,6 +508,7 @@ LIBREADLINE_DEPS = @LIBREADLINE_DEPS@ LIBS = $(INTLLIBS) @LIBS@ LIBTOOL = @LIBTOOL@ LIBTOOL_DEPS = @LIBTOOL_DEPS@ +LIBUSB_BACKEND_LIBDEPS = @LIBUSB_BACKEND_LIBDEPS@ LIBUSB_CFLAGS = @LIBUSB_CFLAGS@ LIBUSB_LIBS = @LIBUSB_LIBS@ LIPO = @LIPO@ diff --git a/src/testpattern/compare-checksums.in b/src/testpattern/compare-checksums.in index 0846424..c27ffdf 100755 --- a/src/testpattern/compare-checksums.in +++ b/src/testpattern/compare-checksums.in @@ -3,6 +3,12 @@ use strict; my (%old_modes, %old_printers, %new_modes, %new_printers); +my ($detail1) = 0; + +while ($#ARGV >= 0 && $ARGV[0] eq '-d') { + $detail1++; + shift @ARGV; +} if ($#ARGV != 1) { die "Usage: $0 old_checksum_file new_checksum_file\n"; @@ -84,11 +90,15 @@ sub print_changes($$@) { my ($tag, $detail, @changes) = @_; my ($prev_printer); return if ($#changes < 0); - print "$tag:\n"; + if (! $detail1) { + print "$tag:\n"; + } foreach my $m (@changes) { my ($printer) = get_printer($m); my ($mode) = get_mode($m); - if ($detail) { + if ($detail > 1) { + print "${printer}_${mode}\n"; + } elsif ($detail) { if ($printer ne $prev_printer) { print " $printer:\n"; $prev_printer = $printer; @@ -101,9 +111,11 @@ sub print_changes($$@) { print "\n"; } -print "*** Changes from $ARGV[0] to $ARGV[1] ***\n\n"; -print_changes("Printers removed from $ARGV[1]", 0, @only_old_printers); -print_changes("Printers added to $ARGV[1]", 0, @only_new_printers); -print_changes("Modes removed from $ARGV[1]", 1, @only_old_modes); -print_changes("Modes added to $ARGV[1]", 1, @only_new_modes); -print_changes("Changed printing modes", 1, @changed_modes); +if (! $detail1) { + print "*** Changes from $ARGV[0] to $ARGV[1] ***\n\n"; + print_changes("Printers removed from $ARGV[1]", 0, @only_old_printers); + print_changes("Printers added to $ARGV[1]", 0, @only_new_printers); + print_changes("Modes removed from $ARGV[1]", 1, @only_old_modes); + print_changes("Modes added to $ARGV[1]", 1, @only_new_modes); +} +print_changes("Changed printing modes", 1 + $detail1, @changed_modes); diff --git a/src/testpattern/extended.sample b/src/testpattern/extended.sample index 025f841..53ec901 100644 --- a/src/testpattern/extended.sample +++ b/src/testpattern/extended.sample @@ -1,7 +1,6 @@ # Sample test pattern file, for use with Gimp-Print test pattern generator -# Printer/driver settings. Please see src/ghost/README for appropriate -# values for each of these settings +# Printer/driver settings. # Printer model printer escp2-2200; mode extended 7 16; diff --git a/src/testpattern/printer_options.c b/src/testpattern/printer_options.c index a13479e..5f736e2 100644 --- a/src/testpattern/printer_options.c +++ b/src/testpattern/printer_options.c @@ -1,5 +1,4 @@ /* - * "$Id: printer_options.c,v 1.7 2015/10/04 15:09:54 rlk Exp $" * * Dump the per-printer options for the OpenPrinting database * diff --git a/src/testpattern/printers.c b/src/testpattern/printers.c index 3879de9..5f36568 100644 --- a/src/testpattern/printers.c +++ b/src/testpattern/printers.c @@ -1,5 +1,4 @@ /* - * "$Id: printers.c,v 1.7 2007/03/05 00:04:00 tillkamppeter Exp $" * * Dump the per-printer options for the OpenPrinting database * diff --git a/src/testpattern/run-testpattern-2.in b/src/testpattern/run-testpattern-2.in index 62c7cbf..48d84d2 100644 --- a/src/testpattern/run-testpattern-2.in +++ b/src/testpattern/run-testpattern-2.in @@ -571,6 +571,7 @@ sub do_printer($$) { my $min_res_value = 0; my $first_time = 1; my $key; + my $skip_resolutions_local = $skip_resolutions; my %opt_vals = {}; $tmp = $stpdata{$printer}{'Resolution'}; my (@resolutions) = grep {$_ ne 'None' } keys %$tmp; @@ -589,6 +590,10 @@ sub do_printer($$) { } foreach $key (@special_options) { + my (@subkeys) = split(/,/, $key); + if (grep { /^Resolution$/ } @subkeys) { + $skip_resolutions_local = 1; + } my $nkey = build_key($key, $printer); if ($nkey ne "") { my (@vals) = build_list($nkey, $printer); @@ -612,7 +617,7 @@ sub do_printer($$) { foreach $pmode (sort @printing_modes) { my ($resolution); $pages = $std_pages; - if (! $skip_resolutions) { + if (! $skip_resolutions_local) { foreach $resolution (sort @resolutions) { @extras = (); @job_extras = (); @@ -643,6 +648,8 @@ sub do_printer($$) { foreach $key (sort keys %opt_vals) { next if ($key eq "RawChannels" && $pmode ne "Color"); my (@subkeys) = split (/,/, $key); + my (%subkeys); + map {$subkeys{$_} = 1} @subkeys; $tmp = $opt_vals{$key}; if (defined $tmp && $tmp >= 1) { my (@opts) = sort @$tmp; @@ -656,7 +663,7 @@ sub do_printer($$) { @messages = (); @global_messages = (); set_opt("PrintingMode", $pmode, $printer); - if ($use_min_res) { + if ($use_min_res && ! grep { /^Resolution$/ } @subkeys) { set_opt("Resolution", $min_res_name, $printer); } my (@mvals); @@ -696,7 +703,9 @@ sub do_printer($$) { $pages = $duplex_pages; } } - } grep { $use_unused_options || defined $stpdata{$printer}{$_}} (keys %base_settings); + } grep { ! defined $subkeys{$_} && + ($use_unused_options || + defined $stpdata{$printer}{$_})} (keys %base_settings); my ($mstring) = join "_", @mvals; my ($ostring) = join "+", @ovals; my $case; @@ -748,9 +757,11 @@ foreach my $printer (@printer_list) { sub restart_testpattern { my ($silent) = @_; if (! $silent) { - $error = 1; close($global_fh); my ($err) = $? & 255; + if ($err > 0) { + $error++; + } if ($single > 1) { warn("\n***TESTPATTERN CRASHED*** ($global_case) ($err)!\n"); } else { @@ -891,7 +902,7 @@ if ($list_options) { if ($single > 1) { print STDERR "$error cases failed\n"; } else { - print STDERR "Failures noted.\n"; + print STDERR "*** $error CRASHES NOTED***\n"; } } exit 1; diff --git a/src/testpattern/testpattern.c b/src/testpattern/testpattern.c index 2e14faa..ca3d25d 100644 --- a/src/testpattern/testpattern.c +++ b/src/testpattern/testpattern.c @@ -1,5 +1,4 @@ /* - * "$Id: testpattern.c,v 1.65 2015/04/11 20:35:42 rlk Exp $" * * Test pattern generator for Gutenprint * diff --git a/src/testpattern/testpattern.h b/src/testpattern/testpattern.h index 29bd3c3..d43618c 100644 --- a/src/testpattern/testpattern.h +++ b/src/testpattern/testpattern.h @@ -1,5 +1,4 @@ /* - * "$Id: testpattern.h,v 1.21 2014/01/23 13:22:41 rlk Exp $" * * Test pattern generator for Gimp-Print * diff --git a/src/testpattern/testpattern.sample b/src/testpattern/testpattern.sample index dd5a596..5359c4b 100644 --- a/src/testpattern/testpattern.sample +++ b/src/testpattern/testpattern.sample @@ -1,7 +1,6 @@ # Sample test pattern file, for use with Gimp-Print test pattern generator -# Printer/driver settings. Please see src/ghost/README for appropriate -# values for each of these settings +# Printer/driver settings. # Printer model printer escp2-870; # Resolution, or print quality diff --git a/src/testpattern/testpatternl.c b/src/testpattern/testpatternl.c index cee5dea..3a6e90e 100644 --- a/src/testpattern/testpatternl.c +++ b/src/testpattern/testpatternl.c @@ -752,7 +752,6 @@ int yy_flex_debug = 0; char *yytext; #line 1 "testpatternl.l" /* - * "$Id: testpatternl.l,v 1.28 2014/01/04 00:30:27 rlk Exp $" * * Test pattern generator for Gimp-Print * @@ -772,7 +771,7 @@ char *yytext; * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#line 24 "testpatternl.l" +#line 23 "testpatternl.l" #ifdef HAVE_CONFIG_H #include <config.h> @@ -817,7 +816,7 @@ do \ while (0) -#line 821 "testpatternl.c" +#line 820 "testpatternl.c" #define INITIAL 0 @@ -999,10 +998,10 @@ YY_DECL register char *yy_cp, *yy_bp; register int yy_act; -#line 82 "testpatternl.l" +#line 81 "testpatternl.l" -#line 1006 "testpatternl.c" +#line 1005 "testpatternl.c" if ( !(yy_init) ) { @@ -1087,267 +1086,267 @@ do_action: /* This label is used only to access EOF actions. */ case 1: YY_RULE_SETUP -#line 84 "testpatternl.l" +#line 83 "testpatternl.l" DBG(GAMMA); return GAMMA; YY_BREAK case 2: YY_RULE_SETUP -#line 85 "testpatternl.l" +#line 84 "testpatternl.l" DBG(LEVEL); return LEVEL; YY_BREAK case 3: YY_RULE_SETUP -#line 86 "testpatternl.l" +#line 85 "testpatternl.l" DBG(STEPS); return STEPS; YY_BREAK case 4: YY_RULE_SETUP -#line 87 "testpatternl.l" +#line 86 "testpatternl.l" DBG(INK_LIMIT); return INK_LIMIT; YY_BREAK case 5: YY_RULE_SETUP -#line 88 "testpatternl.l" +#line 87 "testpatternl.l" DBG(PRINTER); return PRINTER; YY_BREAK case 6: YY_RULE_SETUP -#line 89 "testpatternl.l" +#line 88 "testpatternl.l" DBG(PARAMETER); return PARAMETER; YY_BREAK case 7: YY_RULE_SETUP -#line 90 "testpatternl.l" +#line 89 "testpatternl.l" DBG(PARAMETER_INT); return PARAMETER_INT; YY_BREAK case 8: YY_RULE_SETUP -#line 91 "testpatternl.l" +#line 90 "testpatternl.l" DBG(PARAMETER_BOOL); return PARAMETER_BOOL; YY_BREAK case 9: YY_RULE_SETUP -#line 92 "testpatternl.l" +#line 91 "testpatternl.l" DBG(PARAMETER); return PARAMETER; YY_BREAK case 10: YY_RULE_SETUP -#line 93 "testpatternl.l" +#line 92 "testpatternl.l" DBG(PARAMETER_FLOAT); return PARAMETER_FLOAT; YY_BREAK case 11: YY_RULE_SETUP -#line 94 "testpatternl.l" +#line 93 "testpatternl.l" DBG(PARAMETER_CURVE); return PARAMETER_CURVE; YY_BREAK case 12: YY_RULE_SETUP -#line 95 "testpatternl.l" +#line 94 "testpatternl.l" DBG(DENSITY); return DENSITY; YY_BREAK case 13: YY_RULE_SETUP -#line 96 "testpatternl.l" +#line 95 "testpatternl.l" DBG(TOP); return TOP; YY_BREAK case 14: YY_RULE_SETUP -#line 97 "testpatternl.l" +#line 96 "testpatternl.l" DBG(LEFT); return LEFT; YY_BREAK case 15: YY_RULE_SETUP -#line 98 "testpatternl.l" +#line 97 "testpatternl.l" DBG(SIZE_MODE); return SIZE_MODE; YY_BREAK case 16: YY_RULE_SETUP -#line 99 "testpatternl.l" +#line 98 "testpatternl.l" DBG(RELATIVE); return RELATIVE; YY_BREAK case 17: YY_RULE_SETUP -#line 100 "testpatternl.l" +#line 99 "testpatternl.l" DBG(PT); return PT; YY_BREAK case 18: YY_RULE_SETUP -#line 101 "testpatternl.l" +#line 100 "testpatternl.l" DBG(IN); return IN; YY_BREAK case 19: YY_RULE_SETUP -#line 102 "testpatternl.l" +#line 101 "testpatternl.l" DBG(MM); return MM; YY_BREAK case 20: YY_RULE_SETUP -#line 103 "testpatternl.l" +#line 102 "testpatternl.l" DBG(HSIZE); return HSIZE; YY_BREAK case 21: YY_RULE_SETUP -#line 104 "testpatternl.l" +#line 103 "testpatternl.l" DBG(VSIZE); return VSIZE; YY_BREAK case 22: YY_RULE_SETUP -#line 105 "testpatternl.l" +#line 104 "testpatternl.l" DBG(BLACKLINE); return BLACKLINE; YY_BREAK case 23: YY_RULE_SETUP -#line 106 "testpatternl.l" +#line 105 "testpatternl.l" DBG(PATTERN); return PATTERN; YY_BREAK case 24: YY_RULE_SETUP -#line 107 "testpatternl.l" +#line 106 "testpatternl.l" DBG(XPATTERN); return XPATTERN; YY_BREAK case 25: YY_RULE_SETUP -#line 108 "testpatternl.l" +#line 107 "testpatternl.l" DBG(IMAGE); return IMAGE; YY_BREAK case 26: YY_RULE_SETUP -#line 109 "testpatternl.l" +#line 108 "testpatternl.l" DBG(EXTENDED); return EXTENDED; YY_BREAK case 27: YY_RULE_SETUP -#line 110 "testpatternl.l" +#line 109 "testpatternl.l" DBG(GRID); return GRID; YY_BREAK case 28: YY_RULE_SETUP -#line 111 "testpatternl.l" +#line 110 "testpatternl.l" DBG(CHANNEL); return CHANNEL; YY_BREAK case 29: YY_RULE_SETUP -#line 112 "testpatternl.l" +#line 111 "testpatternl.l" DBG(PAGESIZE); return PAGESIZE; YY_BREAK case 30: YY_RULE_SETUP -#line 113 "testpatternl.l" +#line 112 "testpatternl.l" DBG(SEMI); return SEMI; YY_BREAK case 31: YY_RULE_SETUP -#line 114 "testpatternl.l" +#line 113 "testpatternl.l" DBG(MODE); return MODE; YY_BREAK case 32: YY_RULE_SETUP -#line 115 "testpatternl.l" +#line 114 "testpatternl.l" yylval.ival = CMYK;DBG(CMYK); return CMYK; YY_BREAK case 33: YY_RULE_SETUP -#line 116 "testpatternl.l" +#line 115 "testpatternl.l" yylval.ival = CMYK;DBG(KCMY); return KCMY; YY_BREAK case 34: YY_RULE_SETUP -#line 117 "testpatternl.l" +#line 116 "testpatternl.l" yylval.ival = RGB;DBG(RGB); return RGB; YY_BREAK case 35: YY_RULE_SETUP -#line 118 "testpatternl.l" +#line 117 "testpatternl.l" yylval.ival = RGB;DBG(CMY); return CMY; YY_BREAK case 36: YY_RULE_SETUP -#line 119 "testpatternl.l" +#line 118 "testpatternl.l" yylval.ival = GRAY;DBG(GRAY); return GRAY; YY_BREAK case 37: YY_RULE_SETUP -#line 120 "testpatternl.l" +#line 119 "testpatternl.l" yylval.ival = GRAY;DBG(GRAY); return GRAY; YY_BREAK case 38: YY_RULE_SETUP -#line 121 "testpatternl.l" +#line 120 "testpatternl.l" yylval.ival = WHITE;DBG(WHITE); return WHITE; YY_BREAK case 39: YY_RULE_SETUP -#line 122 "testpatternl.l" +#line 121 "testpatternl.l" DBG(OUTPUT); return OUTPUT; YY_BREAK case 40: YY_RULE_SETUP -#line 123 "testpatternl.l" +#line 122 "testpatternl.l" DBG(MESSAGE); return MESSAGE; YY_BREAK case 41: YY_RULE_SETUP -#line 124 "testpatternl.l" +#line 123 "testpatternl.l" DBG(NOSCALE); return NOSCALE; YY_BREAK case 42: YY_RULE_SETUP -#line 125 "testpatternl.l" +#line 124 "testpatternl.l" DBG(START_JOB); return START_JOB; YY_BREAK case 43: YY_RULE_SETUP -#line 126 "testpatternl.l" +#line 125 "testpatternl.l" DBG(END_JOB); return END_JOB; YY_BREAK case 44: YY_RULE_SETUP -#line 127 "testpatternl.l" +#line 126 "testpatternl.l" DBG(END); return END; YY_BREAK case 45: YY_RULE_SETUP -#line 129 "testpatternl.l" +#line 128 "testpatternl.l" yylval.sval = yytext;DBG(COLOR); return COLOR; YY_BREAK case 46: YY_RULE_SETUP -#line 130 "testpatternl.l" +#line 129 "testpatternl.l" yylval.ival = strtol(yytext, NULL, 0); yylval.dval = (double) yylval.ival; DBG(tINT); return tINT; YY_BREAK case 47: YY_RULE_SETUP -#line 131 "testpatternl.l" +#line 130 "testpatternl.l" yylval.dval = strtod(yytext, NULL); DBG(tDOUBLE); return tDOUBLE; YY_BREAK case 48: /* rule 48 can match eol */ YY_RULE_SETUP -#line 132 "testpatternl.l" +#line 131 "testpatternl.l" yylval.sval = c_strstrip(yytext); DBG(tSTRING); return tSTRING; YY_BREAK case 49: YY_RULE_SETUP -#line 133 "testpatternl.l" +#line 132 "testpatternl.l" DBG(whitespace); /* Skip blanks/tabs */ YY_BREAK case 50: YY_RULE_SETUP -#line 134 "testpatternl.l" +#line 133 "testpatternl.l" DBG(comment); /* Skip comments */ YY_BREAK case 51: /* rule 51 can match eol */ YY_RULE_SETUP -#line 135 "testpatternl.l" +#line 134 "testpatternl.l" DBG(newline); mylineno++; YY_BREAK case 52: YY_RULE_SETUP -#line 136 "testpatternl.l" +#line 135 "testpatternl.l" ECHO; YY_BREAK -#line 1351 "testpatternl.c" +#line 1350 "testpatternl.c" case YY_STATE_EOF(INITIAL): yyterminate(); @@ -2341,4 +2340,4 @@ void yyfree (void * ptr ) #define YYTABLES_NAME "yytables" -#line 136 "testpatternl.l" +#line 135 "testpatternl.l" diff --git a/src/testpattern/testpatternl.l b/src/testpattern/testpatternl.l index f4f6708..21f1530 100644 --- a/src/testpattern/testpatternl.l +++ b/src/testpattern/testpatternl.l @@ -1,5 +1,4 @@ /* - * "$Id: testpatternl.l,v 1.28 2014/01/04 00:30:27 rlk Exp $" * * Test pattern generator for Gimp-Print * diff --git a/src/testpattern/testpatterny.c b/src/testpattern/testpatterny.c index 818087e..47bd3bf 100644 --- a/src/testpattern/testpatterny.c +++ b/src/testpattern/testpatterny.c @@ -1,10 +1,8 @@ +/* A Bison parser, made by GNU Bison 2.7. */ -/* A Bison parser, made by GNU Bison 2.4.1. */ - -/* Skeleton implementation for Bison's Yacc-like parsers in C +/* Bison implementation for Yacc-like parsers in C - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 - Free Software Foundation, Inc. + Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -46,7 +44,7 @@ #define YYBISON 1 /* Bison version. */ -#define YYBISON_VERSION "2.4.1" +#define YYBISON_VERSION "2.7" /* Skeleton name. */ #define YYSKELETON_NAME "yacc.c" @@ -60,15 +58,12 @@ /* Pull parsers. */ #define YYPULL 1 -/* Using locations. */ -#define YYLSP_NEEDED 0 /* Copy the first part of user declarations. */ - -/* Line 189 of yacc.c */ -#line 23 "testpatterny.y" +/* Line 371 of yacc.c */ +#line 22 "testpatterny.y" #ifdef HAVE_CONFIG_H @@ -135,14 +130,16 @@ find_color(const char *name) } +/* Line 371 of yacc.c */ +#line 135 "testpatterny.c" -/* Line 189 of yacc.c */ -#line 141 "testpatterny.c" - -/* Enabling traces. */ -#ifndef YYDEBUG -# define YYDEBUG 0 -#endif +# ifndef YY_NULL +# if defined __cplusplus && 201103L <= __cplusplus +# define YY_NULL nullptr +# else +# define YY_NULL 0 +# endif +# endif /* Enabling verbose error messages. */ #ifdef YYERROR_VERBOSE @@ -152,11 +149,17 @@ find_color(const char *name) # define YYERROR_VERBOSE 0 #endif -/* Enabling the token table. */ -#ifndef YYTOKEN_TABLE -# define YYTOKEN_TABLE 0 +/* In a future release of Bison, this section will be replaced + by #include "y.tab.h". */ +#ifndef YY_YY_TESTPATTERNY_H_INCLUDED +# define YY_YY_TESTPATTERNY_H_INCLUDED +/* Enabling traces. */ +#ifndef YYDEBUG +# define YYDEBUG 0 +#endif +#if YYDEBUG +extern int yydebug; #endif - /* Tokens. */ #ifndef YYTOKENTYPE @@ -262,19 +265,34 @@ find_color(const char *name) - #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 #endif +extern YYSTYPE yylval; -/* Copy the second part of user declarations. */ +#ifdef YYPARSE_PARAM +#if defined __STDC__ || defined __cplusplus +int yyparse (void *YYPARSE_PARAM); +#else +int yyparse (); +#endif +#else /* ! YYPARSE_PARAM */ +#if defined __STDC__ || defined __cplusplus +int yyparse (void); +#else +int yyparse (); +#endif +#endif /* ! YYPARSE_PARAM */ +#endif /* !YY_YY_TESTPATTERNY_H_INCLUDED */ + +/* Copy the second part of user declarations. */ -/* Line 264 of yacc.c */ -#line 278 "testpatterny.c" +/* Line 390 of yacc.c */ +#line 296 "testpatterny.c" #ifdef short # undef short @@ -324,27 +342,27 @@ typedef short int yytype_int16; #define YYSIZE_MAXIMUM ((YYSIZE_T) -1) #ifndef YY_ -# if YYENABLE_NLS +# if defined YYENABLE_NLS && YYENABLE_NLS # if ENABLE_NLS # include <libintl.h> /* INFRINGES ON USER NAME SPACE */ -# define YY_(msgid) dgettext ("bison-runtime", msgid) +# define YY_(Msgid) dgettext ("bison-runtime", Msgid) # endif # endif # ifndef YY_ -# define YY_(msgid) msgid +# define YY_(Msgid) Msgid # endif #endif /* Suppress unused-variable warnings by "using" E. */ #if ! defined lint || defined __GNUC__ -# define YYUSE(e) ((void) (e)) +# define YYUSE(E) ((void) (E)) #else -# define YYUSE(e) /* empty */ +# define YYUSE(E) /* empty */ #endif /* Identity function, used to suppress warnings about constant conditions. */ #ifndef lint -# define YYID(n) (n) +# define YYID(N) (N) #else #if (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) @@ -377,11 +395,12 @@ YYID (yyi) # define alloca _alloca # else # define YYSTACK_ALLOC alloca -# if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ +# if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ -# ifndef _STDLIB_H -# define _STDLIB_H 1 + /* Use EXIT_SUCCESS as a witness for stdlib.h. */ +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 # endif # endif # endif @@ -404,24 +423,24 @@ YYID (yyi) # ifndef YYSTACK_ALLOC_MAXIMUM # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM # endif -# if (defined __cplusplus && ! defined _STDLIB_H \ +# if (defined __cplusplus && ! defined EXIT_SUCCESS \ && ! ((defined YYMALLOC || defined malloc) \ && (defined YYFREE || defined free))) # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ -# ifndef _STDLIB_H -# define _STDLIB_H 1 +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 # endif # endif # ifndef YYMALLOC # define YYMALLOC malloc -# if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ +# if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ # endif # endif # ifndef YYFREE # define YYFREE free -# if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ +# if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) void free (void *); /* INFRINGES ON USER NAME SPACE */ # endif @@ -450,23 +469,7 @@ union yyalloc ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ + YYSTACK_GAP_MAXIMUM) -/* Copy COUNT objects from FROM to TO. The source and destination do - not overlap. */ -# ifndef YYCOPY -# if defined __GNUC__ && 1 < __GNUC__ -# define YYCOPY(To, From, Count) \ - __builtin_memcpy (To, From, (Count) * sizeof (*(From))) -# else -# define YYCOPY(To, From, Count) \ - do \ - { \ - YYSIZE_T yyi; \ - for (yyi = 0; yyi < (Count); yyi++) \ - (To)[yyi] = (From)[yyi]; \ - } \ - while (YYID (0)) -# endif -# endif +# define YYCOPY_NEEDED 1 /* Relocate STACK from its old location to the new one. The local variables YYSIZE and YYSTACKSIZE give the old and new number of @@ -486,6 +489,26 @@ union yyalloc #endif +#if defined YYCOPY_NEEDED && YYCOPY_NEEDED +/* Copy COUNT objects from SRC to DST. The source and destination do + not overlap. */ +# ifndef YYCOPY +# if defined __GNUC__ && 1 < __GNUC__ +# define YYCOPY(Dst, Src, Count) \ + __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src))) +# else +# define YYCOPY(Dst, Src, Count) \ + do \ + { \ + YYSIZE_T yyi; \ + for (yyi = 0; yyi < (Count); yyi++) \ + (Dst)[yyi] = (Src)[yyi]; \ + } \ + while (YYID (0)) +# endif +# endif +#endif /* !YYCOPY_NEEDED */ + /* YYFINAL -- State number of the termination state. */ #define YYFINAL 62 /* YYLAST -- Last index in YYTABLE. */ @@ -605,24 +628,24 @@ static const yytype_int8 yyrhs[] = /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 144, 144, 144, 149, 159, 169, 179, 189, 199, - 209, 219, 219, 219, 219, 219, 219, 219, 222, 230, - 230, 233, 236, 246, 255, 265, 274, 281, 288, 295, - 304, 313, 322, 322, 325, 335, 344, 353, 362, 376, - 376, 376, 376, 376, 378, 385, 392, 399, 406, 413, - 420, 427, 427, 427, 427, 429, 431, 438, 445, 453, - 461, 476, 476, 479, 479, 482, 485, 499, 512, 512, - 515, 515, 518, 518, 521, 521, 524, 539, 542, 557, - 568, 585, 592, 592, 595, 598, 608, 614, 614, 617, - 621, 625, 625, 625, 625, 625, 625, 626, 626, 626, - 626, 626, 626, 626, 627, 627, 627, 627, 627, 627, - 628, 628, 628, 628, 631, 635, 635, 635, 635, 638, - 642, 642, 645, 649, 649, 652, 652, 655, 655, 660, - 659 + 0, 143, 143, 143, 148, 158, 168, 178, 188, 198, + 208, 218, 218, 218, 218, 218, 218, 218, 221, 229, + 229, 232, 235, 245, 254, 264, 273, 280, 287, 294, + 303, 312, 321, 321, 324, 334, 343, 352, 361, 375, + 375, 375, 375, 375, 377, 384, 391, 398, 405, 412, + 419, 426, 426, 426, 426, 428, 430, 437, 444, 452, + 460, 475, 475, 478, 478, 481, 484, 498, 511, 511, + 514, 514, 517, 517, 520, 520, 523, 538, 541, 556, + 567, 584, 591, 591, 594, 597, 607, 613, 613, 616, + 620, 624, 624, 624, 624, 624, 624, 625, 625, 625, + 625, 625, 625, 625, 626, 626, 626, 626, 626, 626, + 627, 627, 627, 627, 630, 634, 634, 634, 634, 637, + 641, 641, 644, 648, 648, 651, 651, 654, 654, 659, + 658 }; #endif -#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE +#if YYDEBUG || YYERROR_VERBOSE || 0 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. First, the terminals, then, starting at YYNTOKENS, nonterminals. */ static const char *const yytname[] = @@ -648,7 +671,7 @@ static const char *const yytname[] = "color_blocks", "patvars", "pattern", "xpattern", "grid", "image", "Message", "Messages", "message", "Output0", "Output1", "output", "start_job", "end_job", "A_Rule", "Rule", "A_Pattern", "Pattern", - "Patterns", "Image", "Rules", "Print", "EOF", "Thing", "$@1", 0 + "Patterns", "Image", "Rules", "Print", "EOF", "Thing", "$@1", YY_NULL }; #endif @@ -703,8 +726,8 @@ static const yytype_uint8 yyr2[] = 4 }; -/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state - STATE-NUM when YYTABLE doesn't specify something else to do. Zero +/* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM. + Performed when YYTABLE doesn't specify something else to do. Zero means the default is an error. */ static const yytype_uint8 yydefact[] = { @@ -783,8 +806,7 @@ static const yytype_int16 yypgoto[] = /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which - number is the opposite. If zero, do what YYDEFACT says. - If YYTABLE_NINF, syntax error. */ + number is the opposite. If YYTABLE_NINF, syntax error. */ #define YYTABLE_NINF -1 static const yytype_uint8 yytable[] = { @@ -808,6 +830,12 @@ static const yytype_uint8 yytable[] = 178, 179, 180, 0, 0, 181, 0, 182 }; +#define yypact_value_is_default(Yystate) \ + (!!((Yystate) == (-141))) + +#define yytable_value_is_error(Yytable_value) \ + YYID (0) + static const yytype_int16 yycheck[] = { 3, 3, 4, 6, 6, 21, 22, 23, 24, 6, @@ -867,78 +895,50 @@ static const yytype_uint8 yystos[] = /* Like YYERROR except do call yyerror. This remains here temporarily to ease the transition to the new meaning of YYERROR, for GCC. - Once GCC version 2 has supplanted version 1, this can go. */ + Once GCC version 2 has supplanted version 1, this can go. However, + YYFAIL appears to be in use. Nevertheless, it is formally deprecated + in Bison 2.4.2's NEWS entry, where a plan to phase it out is + discussed. */ #define YYFAIL goto yyerrlab +#if defined YYFAIL + /* This is here to suppress warnings from the GCC cpp's + -Wunused-macros. Normally we don't worry about that warning, but + some users do, and we want to make it easy for users to remove + YYFAIL uses, which will produce warnings from Bison 2.5. */ +#endif #define YYRECOVERING() (!!yyerrstatus) -#define YYBACKUP(Token, Value) \ -do \ - if (yychar == YYEMPTY && yylen == 1) \ - { \ - yychar = (Token); \ - yylval = (Value); \ - yytoken = YYTRANSLATE (yychar); \ - YYPOPSTACK (1); \ - goto yybackup; \ - } \ - else \ - { \ +#define YYBACKUP(Token, Value) \ +do \ + if (yychar == YYEMPTY) \ + { \ + yychar = (Token); \ + yylval = (Value); \ + YYPOPSTACK (yylen); \ + yystate = *yyssp; \ + goto yybackup; \ + } \ + else \ + { \ yyerror (YY_("syntax error: cannot back up")); \ YYERROR; \ } \ while (YYID (0)) - +/* Error token number */ #define YYTERROR 1 #define YYERRCODE 256 -/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N]. - If N is 0, then set CURRENT to the empty location which ends - the previous symbol: RHS[0] (always defined). */ - -#define YYRHSLOC(Rhs, K) ((Rhs)[K]) -#ifndef YYLLOC_DEFAULT -# define YYLLOC_DEFAULT(Current, Rhs, N) \ - do \ - if (YYID (N)) \ - { \ - (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \ - (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \ - (Current).last_line = YYRHSLOC (Rhs, N).last_line; \ - (Current).last_column = YYRHSLOC (Rhs, N).last_column; \ - } \ - else \ - { \ - (Current).first_line = (Current).last_line = \ - YYRHSLOC (Rhs, 0).last_line; \ - (Current).first_column = (Current).last_column = \ - YYRHSLOC (Rhs, 0).last_column; \ - } \ - while (YYID (0)) -#endif - - -/* YY_LOCATION_PRINT -- Print the location on the stream. - This macro was not mandated originally: define only if we know - we won't break user code: when these are the locations we know. */ - +/* This macro is provided for backward compatibility. */ #ifndef YY_LOCATION_PRINT -# if YYLTYPE_IS_TRIVIAL -# define YY_LOCATION_PRINT(File, Loc) \ - fprintf (File, "%d.%d-%d.%d", \ - (Loc).first_line, (Loc).first_column, \ - (Loc).last_line, (Loc).last_column) -# else -# define YY_LOCATION_PRINT(File, Loc) ((void) 0) -# endif +# define YY_LOCATION_PRINT(File, Loc) ((void) 0) #endif /* YYLEX -- calling `yylex' with the right arguments. */ - #ifdef YYLEX_PARAM # define YYLEX yylex (YYLEX_PARAM) #else @@ -988,6 +988,8 @@ yy_symbol_value_print (yyoutput, yytype, yyvaluep) YYSTYPE const * const yyvaluep; #endif { + FILE *yyo = yyoutput; + YYUSE (yyo); if (!yyvaluep) return; # ifdef YYPRINT @@ -999,7 +1001,7 @@ yy_symbol_value_print (yyoutput, yytype, yyvaluep) switch (yytype) { default: - break; + break; } } @@ -1125,7 +1127,6 @@ int yydebug; # define YYMAXDEPTH 10000 #endif - #if YYERROR_VERBOSE @@ -1228,115 +1229,145 @@ yytnamerr (char *yyres, const char *yystr) } # endif -/* Copy into YYRESULT an error message about the unexpected token - YYCHAR while in state YYSTATE. Return the number of bytes copied, - including the terminating null byte. If YYRESULT is null, do not - copy anything; just return the number of bytes that would be - copied. As a special case, return 0 if an ordinary "syntax error" - message will do. Return YYSIZE_MAXIMUM if overflow occurs during - size calculation. */ -static YYSIZE_T -yysyntax_error (char *yyresult, int yystate, int yychar) -{ - int yyn = yypact[yystate]; +/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message + about the unexpected token YYTOKEN for the state stack whose top is + YYSSP. - if (! (YYPACT_NINF < yyn && yyn <= YYLAST)) - return 0; - else + Return 0 if *YYMSG was successfully written. Return 1 if *YYMSG is + not large enough to hold the message. In that case, also set + *YYMSG_ALLOC to the required number of bytes. Return 2 if the + required number of bytes is too large to store. */ +static int +yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, + yytype_int16 *yyssp, int yytoken) +{ + YYSIZE_T yysize0 = yytnamerr (YY_NULL, yytname[yytoken]); + YYSIZE_T yysize = yysize0; + enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; + /* Internationalized format string. */ + const char *yyformat = YY_NULL; + /* Arguments of yyformat. */ + char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; + /* Number of reported tokens (one for the "unexpected", one per + "expected"). */ + int yycount = 0; + + /* There are many possibilities here to consider: + - Assume YYFAIL is not used. It's too flawed to consider. See + <http://lists.gnu.org/archive/html/bison-patches/2009-12/msg00024.html> + for details. YYERROR is fine as it does not invoke this + function. + - If this state is a consistent state with a default action, then + the only way this function was invoked is if the default action + is an error action. In that case, don't check for expected + tokens because there are none. + - The only way there can be no lookahead present (in yychar) is if + this state is a consistent state with a default action. Thus, + detecting the absence of a lookahead is sufficient to determine + that there is no unexpected or expected token to report. In that + case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this state is a + consistent state with a default action. There might have been a + previous inconsistent state, consistent state with a non-default + action, or user semantic action that manipulated yychar. + - Of course, the expected token list depends on states to have + correct lookahead information, and it depends on the parser not + to perform extra reductions after fetching a lookahead from the + scanner and before detecting a syntax error. Thus, state merging + (from LALR or IELR) and default reductions corrupt the expected + token list. However, the list is correct for canonical LR with + one exception: it will still contain any token that will not be + accepted due to an error action in a later state. + */ + if (yytoken != YYEMPTY) { - int yytype = YYTRANSLATE (yychar); - YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]); - YYSIZE_T yysize = yysize0; - YYSIZE_T yysize1; - int yysize_overflow = 0; - enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; - char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; - int yyx; - -# if 0 - /* This is so xgettext sees the translatable formats that are - constructed on the fly. */ - YY_("syntax error, unexpected %s"); - YY_("syntax error, unexpected %s, expecting %s"); - YY_("syntax error, unexpected %s, expecting %s or %s"); - YY_("syntax error, unexpected %s, expecting %s or %s or %s"); - YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"); -# endif - char *yyfmt; - char const *yyf; - static char const yyunexpected[] = "syntax error, unexpected %s"; - static char const yyexpecting[] = ", expecting %s"; - static char const yyor[] = " or %s"; - char yyformat[sizeof yyunexpected - + sizeof yyexpecting - 1 - + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2) - * (sizeof yyor - 1))]; - char const *yyprefix = yyexpecting; - - /* Start YYX at -YYN if negative to avoid negative indexes in - YYCHECK. */ - int yyxbegin = yyn < 0 ? -yyn : 0; - - /* Stay within bounds of both yycheck and yytname. */ - int yychecklim = YYLAST - yyn + 1; - int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; - int yycount = 1; - - yyarg[0] = yytname[yytype]; - yyfmt = yystpcpy (yyformat, yyunexpected); - - for (yyx = yyxbegin; yyx < yyxend; ++yyx) - if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) - { - if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) - { - yycount = 1; - yysize = yysize0; - yyformat[sizeof yyunexpected - 1] = '\0'; - break; - } - yyarg[yycount++] = yytname[yyx]; - yysize1 = yysize + yytnamerr (0, yytname[yyx]); - yysize_overflow |= (yysize1 < yysize); - yysize = yysize1; - yyfmt = yystpcpy (yyfmt, yyprefix); - yyprefix = yyor; - } + int yyn = yypact[*yyssp]; + yyarg[yycount++] = yytname[yytoken]; + if (!yypact_value_is_default (yyn)) + { + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. In other words, skip the first -YYN actions for + this state because they are default actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST - yyn + 1; + int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + int yyx; + + for (yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR + && !yytable_value_is_error (yytable[yyx + yyn])) + { + if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) + { + yycount = 1; + yysize = yysize0; + break; + } + yyarg[yycount++] = yytname[yyx]; + { + YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULL, yytname[yyx]); + if (! (yysize <= yysize1 + && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) + return 2; + yysize = yysize1; + } + } + } + } - yyf = YY_(yyformat); - yysize1 = yysize + yystrlen (yyf); - yysize_overflow |= (yysize1 < yysize); - yysize = yysize1; + switch (yycount) + { +# define YYCASE_(N, S) \ + case N: \ + yyformat = S; \ + break + YYCASE_(0, YY_("syntax error")); + YYCASE_(1, YY_("syntax error, unexpected %s")); + YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s")); + YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s")); + YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); + YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); +# undef YYCASE_ + } - if (yysize_overflow) - return YYSIZE_MAXIMUM; + { + YYSIZE_T yysize1 = yysize + yystrlen (yyformat); + if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) + return 2; + yysize = yysize1; + } - if (yyresult) - { - /* Avoid sprintf, as that infringes on the user's name space. - Don't have undefined behavior even if the translation - produced a string with the wrong number of "%s"s. */ - char *yyp = yyresult; - int yyi = 0; - while ((*yyp = *yyf) != '\0') - { - if (*yyp == '%' && yyf[1] == 's' && yyi < yycount) - { - yyp += yytnamerr (yyp, yyarg[yyi++]); - yyf += 2; - } - else - { - yyp++; - yyf++; - } - } - } - return yysize; + if (*yymsg_alloc < yysize) + { + *yymsg_alloc = 2 * yysize; + if (! (yysize <= *yymsg_alloc + && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM)) + *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM; + return 1; } + + /* Avoid sprintf, as that infringes on the user's name space. + Don't have undefined behavior even if the translation + produced a string with the wrong number of "%s"s. */ + { + char *yyp = *yymsg; + int yyi = 0; + while ((*yyp = *yyformat) != '\0') + if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount) + { + yyp += yytnamerr (yyp, yyarg[yyi++]); + yyformat += 2; + } + else + { + yyp++; + yyformat++; + } + } + return 0; } #endif /* YYERROR_VERBOSE */ - /*-----------------------------------------------. | Release the memory associated to this symbol. | @@ -1365,40 +1396,35 @@ yydestruct (yymsg, yytype, yyvaluep) { default: - break; + break; } } -/* Prevent warnings from -Wmissing-prototypes. */ -#ifdef YYPARSE_PARAM -#if defined __STDC__ || defined __cplusplus -int yyparse (void *YYPARSE_PARAM); -#else -int yyparse (); -#endif -#else /* ! YYPARSE_PARAM */ -#if defined __STDC__ || defined __cplusplus -int yyparse (void); -#else -int yyparse (); -#endif -#endif /* ! YYPARSE_PARAM */ + /* The lookahead symbol. */ int yychar; + +#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN +# define YY_IGNORE_MAYBE_UNINITIALIZED_END +#endif +#ifndef YY_INITIAL_VALUE +# define YY_INITIAL_VALUE(Value) /* Nothing. */ +#endif + /* The semantic value of the lookahead symbol. */ -YYSTYPE yylval; +YYSTYPE yylval YY_INITIAL_VALUE(yyval_default); /* Number of syntax errors so far. */ int yynerrs; - -/*-------------------------. -| yyparse or yypush_parse. | -`-------------------------*/ +/*----------. +| yyparse. | +`----------*/ #ifdef YYPARSE_PARAM #if (defined __STDC__ || defined __C99__FUNC__ \ @@ -1422,8 +1448,6 @@ yyparse () #endif #endif { - - int yystate; /* Number of tokens to shift before error messages enabled. */ int yyerrstatus; @@ -1432,7 +1456,7 @@ yyparse () `yyss': related to states. `yyvs': related to semantic values. - Refer to the stacks thru separate pointers, to allow yyoverflow + Refer to the stacks through separate pointers, to allow yyoverflow to reallocate them elsewhere. */ /* The state stack. */ @@ -1450,7 +1474,7 @@ yyparse () int yyn; int yyresult; /* Lookahead token as an internal (translated) token number. */ - int yytoken; + int yytoken = 0; /* The variables used to return semantic value and location from the action routines. */ YYSTYPE yyval; @@ -1468,9 +1492,8 @@ yyparse () Keep to zero when no symbol should be popped. */ int yylen = 0; - yytoken = 0; - yyss = yyssa; - yyvs = yyvsa; + yyssp = yyss = yyssa; + yyvsp = yyvs = yyvsa; yystacksize = YYINITDEPTH; YYDPRINTF ((stderr, "Starting parse\n")); @@ -1479,14 +1502,6 @@ yyparse () yyerrstatus = 0; yynerrs = 0; yychar = YYEMPTY; /* Cause a token to be read. */ - - /* Initialize stack pointers. - Waste one element of value and location stack - so that they stay on the same level as the state stack. - The wasted elements are never initialized. */ - yyssp = yyss; - yyvsp = yyvs; - goto yysetstate; /*------------------------------------------------------------. @@ -1578,7 +1593,7 @@ yybackup: /* First try to decide what to do without reference to lookahead token. */ yyn = yypact[yystate]; - if (yyn == YYPACT_NINF) + if (yypact_value_is_default (yyn)) goto yydefault; /* Not known => get a lookahead token if don't already have one. */ @@ -1609,8 +1624,8 @@ yybackup: yyn = yytable[yyn]; if (yyn <= 0) { - if (yyn == 0 || yyn == YYTABLE_NINF) - goto yyerrlab; + if (yytable_value_is_error (yyn)) + goto yyerrlab; yyn = -yyn; goto yyreduce; } @@ -1627,7 +1642,9 @@ yybackup: yychar = YYEMPTY; yystate = yyn; + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN *++yyvsp = yylval; + YY_IGNORE_MAYBE_UNINITIALIZED_END goto yynewstate; @@ -1664,17 +1681,15 @@ yyreduce: switch (yyn) { case 3: - -/* Line 1455 of yacc.c */ -#line 145 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 144 "testpatterny.y" { } break; case 4: - -/* Line 1455 of yacc.c */ -#line 150 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 149 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>cmykspec\n"); @@ -1685,9 +1700,8 @@ yyreduce: break; case 5: - -/* Line 1455 of yacc.c */ -#line 160 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 159 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>kcmyspec\n"); @@ -1698,9 +1712,8 @@ yyreduce: break; case 6: - -/* Line 1455 of yacc.c */ -#line 170 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 169 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>rgbspec\n"); @@ -1711,9 +1724,8 @@ yyreduce: break; case 7: - -/* Line 1455 of yacc.c */ -#line 180 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 179 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>cmyspec\n"); @@ -1724,9 +1736,8 @@ yyreduce: break; case 8: - -/* Line 1455 of yacc.c */ -#line 190 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 189 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>grayspec\n"); @@ -1737,9 +1748,8 @@ yyreduce: break; case 9: - -/* Line 1455 of yacc.c */ -#line 200 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 199 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>whitespec\n"); @@ -1750,9 +1760,8 @@ yyreduce: break; case 10: - -/* Line 1455 of yacc.c */ -#line 210 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 209 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>extendedspec %d\n", (yyvsp[(2) - (2)].ival)); @@ -1763,9 +1772,8 @@ yyreduce: break; case 18: - -/* Line 1455 of yacc.c */ -#line 223 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 222 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>modespec2 %d\n", (yyvsp[(2) - (2)].ival)); @@ -1775,9 +1783,8 @@ yyreduce: break; case 22: - -/* Line 1455 of yacc.c */ -#line 237 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 236 "testpatterny.y" { int channel = find_color((yyvsp[(2) - (3)].sval)); if (getenv("STP_TESTPATTERN_DEBUG")) @@ -1788,9 +1795,8 @@ yyreduce: break; case 23: - -/* Line 1455 of yacc.c */ -#line 247 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 246 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>channel_level %d %f\n", (yyvsp[(2) - (3)].ival), (yyvsp[(3) - (3)].dval)); @@ -1800,9 +1806,8 @@ yyreduce: break; case 24: - -/* Line 1455 of yacc.c */ -#line 256 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 255 "testpatterny.y" { int channel = find_color((yyvsp[(2) - (3)].sval)); if (getenv("STP_TESTPATTERN_DEBUG")) @@ -1813,9 +1818,8 @@ yyreduce: break; case 25: - -/* Line 1455 of yacc.c */ -#line 266 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 265 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>channel_gamma %d %f\n", (yyvsp[(2) - (3)].ival), (yyvsp[(3) - (3)].dval)); @@ -1825,9 +1829,8 @@ yyreduce: break; case 26: - -/* Line 1455 of yacc.c */ -#line 275 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 274 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>global_gamma %f\n", (yyvsp[(2) - (2)].dval)); @@ -1836,9 +1839,8 @@ yyreduce: break; case 27: - -/* Line 1455 of yacc.c */ -#line 282 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 281 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>steps %d\n", (yyvsp[(2) - (2)].ival)); @@ -1847,9 +1849,8 @@ yyreduce: break; case 28: - -/* Line 1455 of yacc.c */ -#line 289 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 288 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>ink_limit %f\n", (yyvsp[(2) - (2)].dval)); @@ -1858,9 +1859,8 @@ yyreduce: break; case 29: - -/* Line 1455 of yacc.c */ -#line 296 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 295 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>printer %s\n", (yyvsp[(2) - (2)].sval)); @@ -1870,9 +1870,8 @@ yyreduce: break; case 30: - -/* Line 1455 of yacc.c */ -#line 305 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 304 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>page_size_name %s\n", (yyvsp[(2) - (2)].sval)); @@ -1882,9 +1881,8 @@ yyreduce: break; case 31: - -/* Line 1455 of yacc.c */ -#line 314 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 313 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>page_size_custom %d %d\n", (yyvsp[(2) - (3)].ival), (yyvsp[(3) - (3)].ival)); @@ -1894,9 +1892,8 @@ yyreduce: break; case 34: - -/* Line 1455 of yacc.c */ -#line 326 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 325 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>parameter_string %s %s\n", (yyvsp[(2) - (3)].sval), (yyvsp[(3) - (3)].sval)); @@ -1907,9 +1904,8 @@ yyreduce: break; case 35: - -/* Line 1455 of yacc.c */ -#line 336 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 335 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>parameter_int %s %d\n", (yyvsp[(2) - (3)].sval), (yyvsp[(3) - (3)].ival)); @@ -1919,9 +1915,8 @@ yyreduce: break; case 36: - -/* Line 1455 of yacc.c */ -#line 345 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 344 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>parameter_bool %s %d\n", (yyvsp[(2) - (3)].sval), (yyvsp[(3) - (3)].ival)); @@ -1931,9 +1926,8 @@ yyreduce: break; case 37: - -/* Line 1455 of yacc.c */ -#line 354 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 353 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>parameter_float %s %f\n", (yyvsp[(2) - (3)].sval), (yyvsp[(3) - (3)].dval)); @@ -1943,9 +1937,8 @@ yyreduce: break; case 38: - -/* Line 1455 of yacc.c */ -#line 363 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 362 "testpatterny.y" { stp_curve_t *curve = stp_curve_create_from_string((yyvsp[(3) - (3)].sval)); if (getenv("STP_TESTPATTERN_DEBUG")) @@ -1960,9 +1953,8 @@ yyreduce: break; case 44: - -/* Line 1455 of yacc.c */ -#line 379 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 378 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>density %f\n", (yyvsp[(2) - (2)].dval)); @@ -1971,9 +1963,8 @@ yyreduce: break; case 45: - -/* Line 1455 of yacc.c */ -#line 386 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 385 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>top %f\n", (yyvsp[(2) - (2)].dval)); @@ -1982,9 +1973,8 @@ yyreduce: break; case 46: - -/* Line 1455 of yacc.c */ -#line 393 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 392 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>left %f\n", (yyvsp[(2) - (2)].dval)); @@ -1993,9 +1983,8 @@ yyreduce: break; case 47: - -/* Line 1455 of yacc.c */ -#line 400 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 399 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>relative size\n"); @@ -2004,9 +1993,8 @@ yyreduce: break; case 48: - -/* Line 1455 of yacc.c */ -#line 407 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 406 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>size inches\n"); @@ -2015,9 +2003,8 @@ yyreduce: break; case 49: - -/* Line 1455 of yacc.c */ -#line 414 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 413 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>size pt\n"); @@ -2026,9 +2013,8 @@ yyreduce: break; case 50: - -/* Line 1455 of yacc.c */ -#line 421 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 420 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>size mm\n"); @@ -2037,9 +2023,8 @@ yyreduce: break; case 56: - -/* Line 1455 of yacc.c */ -#line 432 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 431 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>hsize %f\n", (yyvsp[(2) - (2)].dval)); @@ -2048,9 +2033,8 @@ yyreduce: break; case 57: - -/* Line 1455 of yacc.c */ -#line 439 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 438 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>vsize %f\n", (yyvsp[(2) - (2)].dval)); @@ -2059,9 +2043,8 @@ yyreduce: break; case 58: - -/* Line 1455 of yacc.c */ -#line 446 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 445 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>blackline %d\n", (yyvsp[(2) - (2)].ival)); @@ -2070,9 +2053,8 @@ yyreduce: break; case 59: - -/* Line 1455 of yacc.c */ -#line 454 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 453 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>noscale %d\n", (yyvsp[(2) - (2)].ival)); @@ -2081,9 +2063,8 @@ yyreduce: break; case 60: - -/* Line 1455 of yacc.c */ -#line 462 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 461 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>color_block1 %f %f %f (%d)\n", (yyvsp[(1) - (3)].dval), (yyvsp[(2) - (3)].dval), (yyvsp[(3) - (3)].dval), @@ -2099,9 +2080,8 @@ yyreduce: break; case 66: - -/* Line 1455 of yacc.c */ -#line 486 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 485 "testpatterny.y" { int channel = find_color((yyvsp[(1) - (4)].sval)); if (getenv("STP_TESTPATTERN_DEBUG")) @@ -2116,9 +2096,8 @@ yyreduce: break; case 67: - -/* Line 1455 of yacc.c */ -#line 500 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 499 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>color_block2b %d %f %f %f\n", (yyvsp[(2) - (5)].ival), (yyvsp[(3) - (5)].dval), (yyvsp[(4) - (5)].dval), (yyvsp[(5) - (5)].dval)); @@ -2132,9 +2111,8 @@ yyreduce: break; case 76: - -/* Line 1455 of yacc.c */ -#line 525 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 524 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>patvars %f %f %f %f %f\n", (yyvsp[(1) - (5)].dval), (yyvsp[(2) - (5)].dval), (yyvsp[(3) - (5)].dval), (yyvsp[(4) - (5)].dval), (yyvsp[(5) - (5)].dval)); @@ -2150,9 +2128,8 @@ yyreduce: break; case 78: - -/* Line 1455 of yacc.c */ -#line 543 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 542 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>xpattern\n"); @@ -2168,9 +2145,8 @@ yyreduce: break; case 79: - -/* Line 1455 of yacc.c */ -#line 558 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 557 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>grid %d\n", (yyvsp[(2) - (2)].ival)); @@ -2182,9 +2158,8 @@ yyreduce: break; case 80: - -/* Line 1455 of yacc.c */ -#line 569 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 568 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>image %d %d\n", (yyvsp[(2) - (3)].ival), (yyvsp[(3) - (3)].ival)); @@ -2202,9 +2177,8 @@ yyreduce: break; case 81: - -/* Line 1455 of yacc.c */ -#line 586 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 585 "testpatterny.y" { fprintf(stderr,"%s",(yyvsp[(1) - (1)].sval)); free((yyvsp[(1) - (1)].sval)); @@ -2212,9 +2186,8 @@ yyreduce: break; case 85: - -/* Line 1455 of yacc.c */ -#line 599 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 598 "testpatterny.y" { close_output(); if (global_output) @@ -2225,71 +2198,73 @@ yyreduce: break; case 86: - -/* Line 1455 of yacc.c */ -#line 609 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 608 "testpatterny.y" { global_output = (yyvsp[(2) - (2)].sval); } break; case 89: - -/* Line 1455 of yacc.c */ -#line 618 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 617 "testpatterny.y" { start_job = 1; } break; case 90: - -/* Line 1455 of yacc.c */ -#line 622 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 621 "testpatterny.y" { end_job = 1; } break; case 114: - -/* Line 1455 of yacc.c */ -#line 632 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 631 "testpatterny.y" { global_did_something = 1; } break; case 119: - -/* Line 1455 of yacc.c */ -#line 639 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 638 "testpatterny.y" { global_did_something = 1; } break; case 122: - -/* Line 1455 of yacc.c */ -#line 646 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 645 "testpatterny.y" { global_did_something = 1; } break; case 128: - -/* Line 1455 of yacc.c */ -#line 656 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 655 "testpatterny.y" { return 0; } break; case 129: - -/* Line 1455 of yacc.c */ -#line 660 "testpatterny.y" +/* Line 1792 of yacc.c */ +#line 659 "testpatterny.y" { current_testpattern = get_next_testpattern(); } break; - -/* Line 1455 of yacc.c */ -#line 2291 "testpatterny.c" +/* Line 1792 of yacc.c */ +#line 2255 "testpatterny.c" default: break; } + /* User semantic actions sometimes alter yychar, and that requires + that yytoken be updated with the new translation. We take the + approach of translating immediately before every use of yytoken. + One alternative is translating here after every semantic action, + but that translation would be missed if the semantic action invokes + YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or + if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an + incorrect destructor might then be invoked immediately. In the + case of YYERROR or YYBACKUP, subsequent parser actions might lead + to an incorrect destructor call or verbose syntax error message + before the lookahead is translated. */ YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); YYPOPSTACK (yylen); @@ -2317,6 +2292,10 @@ yyreduce: | yyerrlab -- here on detecting error | `------------------------------------*/ yyerrlab: + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar); + /* If not already recovering from an error, report this error. */ if (!yyerrstatus) { @@ -2324,37 +2303,36 @@ yyerrlab: #if ! YYERROR_VERBOSE yyerror (YY_("syntax error")); #else +# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \ + yyssp, yytoken) { - YYSIZE_T yysize = yysyntax_error (0, yystate, yychar); - if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM) - { - YYSIZE_T yyalloc = 2 * yysize; - if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM)) - yyalloc = YYSTACK_ALLOC_MAXIMUM; - if (yymsg != yymsgbuf) - YYSTACK_FREE (yymsg); - yymsg = (char *) YYSTACK_ALLOC (yyalloc); - if (yymsg) - yymsg_alloc = yyalloc; - else - { - yymsg = yymsgbuf; - yymsg_alloc = sizeof yymsgbuf; - } - } - - if (0 < yysize && yysize <= yymsg_alloc) - { - (void) yysyntax_error (yymsg, yystate, yychar); - yyerror (yymsg); - } - else - { - yyerror (YY_("syntax error")); - if (yysize != 0) - goto yyexhaustedlab; - } + char const *yymsgp = YY_("syntax error"); + int yysyntax_error_status; + yysyntax_error_status = YYSYNTAX_ERROR; + if (yysyntax_error_status == 0) + yymsgp = yymsg; + else if (yysyntax_error_status == 1) + { + if (yymsg != yymsgbuf) + YYSTACK_FREE (yymsg); + yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc); + if (!yymsg) + { + yymsg = yymsgbuf; + yymsg_alloc = sizeof yymsgbuf; + yysyntax_error_status = 2; + } + else + { + yysyntax_error_status = YYSYNTAX_ERROR; + yymsgp = yymsg; + } + } + yyerror (yymsgp); + if (yysyntax_error_status == 2) + goto yyexhaustedlab; } +# undef YYSYNTAX_ERROR #endif } @@ -2413,7 +2391,7 @@ yyerrlab1: for (;;) { yyn = yypact[yystate]; - if (yyn != YYPACT_NINF) + if (!yypact_value_is_default (yyn)) { yyn += YYTERROR; if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) @@ -2436,7 +2414,9 @@ yyerrlab1: YY_STACK_PRINT (yyss, yyssp); } + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN *++yyvsp = yylval; + YY_IGNORE_MAYBE_UNINITIALIZED_END /* Shift the error token. */ @@ -2460,7 +2440,7 @@ yyabortlab: yyresult = 1; goto yyreturn; -#if !defined(yyoverflow) || YYERROR_VERBOSE +#if !defined yyoverflow || YYERROR_VERBOSE /*-------------------------------------------------. | yyexhaustedlab -- memory exhaustion comes here. | `-------------------------------------------------*/ @@ -2472,8 +2452,13 @@ yyexhaustedlab: yyreturn: if (yychar != YYEMPTY) - yydestruct ("Cleanup: discarding lookahead", - yytoken, &yylval); + { + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = YYTRANSLATE (yychar); + yydestruct ("Cleanup: discarding lookahead", + yytoken, &yylval); + } /* Do not reclaim the symbols of the rule which action triggered this YYABORT or YYACCEPT. */ YYPOPSTACK (yylen); @@ -2497,8 +2482,6 @@ yyreturn: } - -/* Line 1675 of yacc.c */ -#line 666 "testpatterny.y" - +/* Line 2055 of yacc.c */ +#line 665 "testpatterny.y" diff --git a/src/testpattern/testpatterny.h b/src/testpattern/testpatterny.h index 010e17a..deb113c 100644 --- a/src/testpattern/testpatterny.h +++ b/src/testpattern/testpatterny.h @@ -1,10 +1,8 @@ +/* A Bison parser, made by GNU Bison 2.7. */ -/* A Bison parser, made by GNU Bison 2.4.1. */ - -/* Skeleton interface for Bison's Yacc-like parsers in C +/* Bison interface for Yacc-like parsers in C - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 - Free Software Foundation, Inc. + Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -32,6 +30,15 @@ This special exception was added by the Free Software Foundation in version 2.2 of Bison. */ +#ifndef YY_YY_TESTPATTERNY_H_INCLUDED +# define YY_YY_TESTPATTERNY_H_INCLUDED +/* Enabling traces. */ +#ifndef YYDEBUG +# define YYDEBUG 0 +#endif +#if YYDEBUG +extern int yydebug; +#endif /* Tokens. */ #ifndef YYTOKENTYPE @@ -137,7 +144,6 @@ - #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED # define yystype YYSTYPE /* obsolescent; will be withdrawn */ @@ -146,4 +152,18 @@ extern YYSTYPE yylval; +#ifdef YYPARSE_PARAM +#if defined __STDC__ || defined __cplusplus +int yyparse (void *YYPARSE_PARAM); +#else +int yyparse (); +#endif +#else /* ! YYPARSE_PARAM */ +#if defined __STDC__ || defined __cplusplus +int yyparse (void); +#else +int yyparse (); +#endif +#endif /* ! YYPARSE_PARAM */ +#endif /* !YY_YY_TESTPATTERNY_H_INCLUDED */ diff --git a/src/testpattern/testpatterny.y b/src/testpattern/testpatterny.y index 229109a..4f921e6 100644 --- a/src/testpattern/testpatterny.y +++ b/src/testpattern/testpatterny.y @@ -1,5 +1,4 @@ /* - * "$Id: testpatterny.y,v 1.40 2010/09/06 17:08:39 rlk Exp $" * * Test pattern generator for Gimp-Print * diff --git a/src/xml/Makefile.am b/src/xml/Makefile.am index 5e09896..557c8e1 100644 --- a/src/xml/Makefile.am +++ b/src/xml/Makefile.am @@ -1,4 +1,3 @@ -## $Id: Makefile.am,v 1.6 2011/03/29 22:58:12 rlk Exp $ ## Copyright (C) 2008 Robert Krawitz ## ## This program is free software; you can redistribute it and/or modify diff --git a/src/xml/Makefile.in b/src/xml/Makefile.in index 3e494b4..5b5c1d5 100644 --- a/src/xml/Makefile.in +++ b/src/xml/Makefile.in @@ -85,25 +85,23 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(top_srcdir)/scripts/global.mk $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/scripts/mkinstalldirs \ - $(top_srcdir)/scripts/depcomp + $(srcdir)/Makefile.am $(top_srcdir)/scripts/depcomp noinst_PROGRAMS = extract-strings$(EXEEXT) subdir = src/xml ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/isc-posix.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stp.m4 \ - $(top_srcdir)/m4/stp_cups.m4 $(top_srcdir)/m4/stp_gimp.m4 \ - $(top_srcdir)/m4/stp_option.m4 $(top_srcdir)/m4/stp_release.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/stp.m4 $(top_srcdir)/m4/stp_cups.m4 \ + $(top_srcdir)/m4/stp_gimp.m4 $(top_srcdir)/m4/stp_option.m4 \ + $(top_srcdir)/m4/stp_release.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/scripts/mkinstalldirs +mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = @@ -289,9 +287,6 @@ ENABLE_STATIC = @ENABLE_STATIC@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FIND = @FIND@ -FOOMATIC_CONFIGURE = @FOOMATIC_CONFIGURE@ -FOOMATIC_KITLOAD = @FOOMATIC_KITLOAD@ -FOOMATIC_PPDFILE = @FOOMATIC_PPDFILE@ GENPPD_LIBS = @GENPPD_LIBS@ GIMP2_CFLAGS = @GIMP2_CFLAGS@ GIMP2_LIBS = @GIMP2_LIBS@ @@ -324,9 +319,6 @@ GUTENPRINT_MICRO_VERSION = @GUTENPRINT_MICRO_VERSION@ GUTENPRINT_MINOR_VERSION = @GUTENPRINT_MINOR_VERSION@ GUTENPRINT_RELEASE_VERSION = @GUTENPRINT_RELEASE_VERSION@ GUTENPRINT_VERSION = @GUTENPRINT_VERSION@ -IJS_CFLAGS = @IJS_CFLAGS@ -IJS_CONFIG = @IJS_CONFIG@ -IJS_LIBS = @IJS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -347,6 +339,7 @@ LIBREADLINE_DEPS = @LIBREADLINE_DEPS@ LIBS = $(INTLLIBS) @LIBS@ LIBTOOL = @LIBTOOL@ LIBTOOL_DEPS = @LIBTOOL_DEPS@ +LIBUSB_BACKEND_LIBDEPS = @LIBUSB_BACKEND_LIBDEPS@ LIBUSB_CFLAGS = @LIBUSB_CFLAGS@ LIBUSB_LIBS = @LIBUSB_LIBS@ LIPO = @LIPO@ diff --git a/src/xml/escp2/Makefile.am b/src/xml/escp2/Makefile.am index 5e60f6f..c8df1ed 100644 --- a/src/xml/escp2/Makefile.am +++ b/src/xml/escp2/Makefile.am @@ -1,4 +1,3 @@ -## $Id: Makefile.am,v 1.9 2009/05/30 14:10:32 rlk Exp $ ## Copyright (C) 2008 Robert Krawitz ## ## This program is free software; you can redistribute it and/or modify diff --git a/src/xml/escp2/Makefile.in b/src/xml/escp2/Makefile.in index c234cc1..f0f8623 100644 --- a/src/xml/escp2/Makefile.in +++ b/src/xml/escp2/Makefile.in @@ -83,23 +83,22 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(top_srcdir)/scripts/global.mk $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/scripts/mkinstalldirs + $(srcdir)/Makefile.am subdir = src/xml/escp2 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/isc-posix.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stp.m4 \ - $(top_srcdir)/m4/stp_cups.m4 $(top_srcdir)/m4/stp_gimp.m4 \ - $(top_srcdir)/m4/stp_option.m4 $(top_srcdir)/m4/stp_release.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/stp.m4 $(top_srcdir)/m4/stp_cups.m4 \ + $(top_srcdir)/m4/stp_gimp.m4 $(top_srcdir)/m4/stp_option.m4 \ + $(top_srcdir)/m4/stp_release.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/scripts/mkinstalldirs +mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = @@ -226,9 +225,6 @@ ENABLE_STATIC = @ENABLE_STATIC@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FIND = @FIND@ -FOOMATIC_CONFIGURE = @FOOMATIC_CONFIGURE@ -FOOMATIC_KITLOAD = @FOOMATIC_KITLOAD@ -FOOMATIC_PPDFILE = @FOOMATIC_PPDFILE@ GENPPD_LIBS = @GENPPD_LIBS@ GIMP2_CFLAGS = @GIMP2_CFLAGS@ GIMP2_LIBS = @GIMP2_LIBS@ @@ -261,9 +257,6 @@ GUTENPRINT_MICRO_VERSION = @GUTENPRINT_MICRO_VERSION@ GUTENPRINT_MINOR_VERSION = @GUTENPRINT_MINOR_VERSION@ GUTENPRINT_RELEASE_VERSION = @GUTENPRINT_RELEASE_VERSION@ GUTENPRINT_VERSION = @GUTENPRINT_VERSION@ -IJS_CFLAGS = @IJS_CFLAGS@ -IJS_CONFIG = @IJS_CONFIG@ -IJS_LIBS = @IJS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -284,6 +277,7 @@ LIBREADLINE_DEPS = @LIBREADLINE_DEPS@ LIBS = $(INTLLIBS) @LIBS@ LIBTOOL = @LIBTOOL@ LIBTOOL_DEPS = @LIBTOOL_DEPS@ +LIBUSB_BACKEND_LIBDEPS = @LIBUSB_BACKEND_LIBDEPS@ LIBUSB_CFLAGS = @LIBUSB_CFLAGS@ LIBUSB_LIBS = @LIBUSB_LIBS@ LIPO = @LIPO@ diff --git a/src/xml/escp2/inks/Makefile.am b/src/xml/escp2/inks/Makefile.am index 17ceaa0..493067c 100644 --- a/src/xml/escp2/inks/Makefile.am +++ b/src/xml/escp2/inks/Makefile.am @@ -1,4 +1,3 @@ -## $Id: Makefile.am,v 1.15 2014/01/23 13:22:41 rlk Exp $ ## Copyright (C) 2008 Robert Krawitz ## ## This program is free software; you can redistribute it and/or modify @@ -64,13 +63,16 @@ pkgxmldata_DATA = \ pro_ultrachrome_k3v.xml \ pro_ultrachrome_k3v4.xml \ pro_ultrachrome_k3v10.xml \ + pro_ultrachrome_k3v10a.xml \ + pro_ultrachrome_k3v10b.xml \ standard.xml \ standard_gen0.xml \ sx445.xml \ ultrachrome.xml \ wf40.xml \ wf500.xml \ - x80.xml + x80.xml \ + xp100.xml xml-stamp: $(pkgxmldata_DATA) Makefile.am -rm -f $@ $@.tmp diff --git a/src/xml/escp2/inks/Makefile.in b/src/xml/escp2/inks/Makefile.in index e7af151..ab0cfff 100644 --- a/src/xml/escp2/inks/Makefile.in +++ b/src/xml/escp2/inks/Makefile.in @@ -84,23 +84,22 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(top_srcdir)/scripts/global.mk $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/scripts/mkinstalldirs + $(srcdir)/Makefile.am subdir = src/xml/escp2/inks ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/isc-posix.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stp.m4 \ - $(top_srcdir)/m4/stp_cups.m4 $(top_srcdir)/m4/stp_gimp.m4 \ - $(top_srcdir)/m4/stp_option.m4 $(top_srcdir)/m4/stp_release.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/stp.m4 $(top_srcdir)/m4/stp_cups.m4 \ + $(top_srcdir)/m4/stp_gimp.m4 $(top_srcdir)/m4/stp_option.m4 \ + $(top_srcdir)/m4/stp_release.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/scripts/mkinstalldirs +mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = @@ -196,9 +195,6 @@ ENABLE_STATIC = @ENABLE_STATIC@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FIND = @FIND@ -FOOMATIC_CONFIGURE = @FOOMATIC_CONFIGURE@ -FOOMATIC_KITLOAD = @FOOMATIC_KITLOAD@ -FOOMATIC_PPDFILE = @FOOMATIC_PPDFILE@ GENPPD_LIBS = @GENPPD_LIBS@ GIMP2_CFLAGS = @GIMP2_CFLAGS@ GIMP2_LIBS = @GIMP2_LIBS@ @@ -231,9 +227,6 @@ GUTENPRINT_MICRO_VERSION = @GUTENPRINT_MICRO_VERSION@ GUTENPRINT_MINOR_VERSION = @GUTENPRINT_MINOR_VERSION@ GUTENPRINT_RELEASE_VERSION = @GUTENPRINT_RELEASE_VERSION@ GUTENPRINT_VERSION = @GUTENPRINT_VERSION@ -IJS_CFLAGS = @IJS_CFLAGS@ -IJS_CONFIG = @IJS_CONFIG@ -IJS_LIBS = @IJS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -254,6 +247,7 @@ LIBREADLINE_DEPS = @LIBREADLINE_DEPS@ LIBS = $(INTLLIBS) @LIBS@ LIBTOOL = @LIBTOOL@ LIBTOOL_DEPS = @LIBTOOL_DEPS@ +LIBUSB_BACKEND_LIBDEPS = @LIBUSB_BACKEND_LIBDEPS@ LIBUSB_CFLAGS = @LIBUSB_CFLAGS@ LIBUSB_LIBS = @LIBUSB_LIBS@ LIPO = @LIPO@ @@ -415,13 +409,16 @@ pkgxmldata_DATA = \ pro_ultrachrome_k3v.xml \ pro_ultrachrome_k3v4.xml \ pro_ultrachrome_k3v10.xml \ + pro_ultrachrome_k3v10a.xml \ + pro_ultrachrome_k3v10b.xml \ standard.xml \ standard_gen0.xml \ sx445.xml \ ultrachrome.xml \ wf40.xml \ wf500.xml \ - x80.xml + x80.xml \ + xp100.xml CLEANFILES = xmli18n-tmp.h xml-stamp xml-stamp.tmp EXTRA_DIST = $(pkgxmldata_DATA) diff --git a/src/xml/escp2/inks/pro_ultrachrome_k3v10a.xml b/src/xml/escp2/inks/pro_ultrachrome_k3v10a.xml new file mode 100644 index 0000000..990f8a0 --- /dev/null +++ b/src/xml/escp2/inks/pro_ultrachrome_k3v10a.xml @@ -0,0 +1,724 @@ +<?xml version="1.0"?> + +<gutenprint xmlns="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0" +xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" +xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint.xsd"> +<copyright> + * Copyright 2008 Robert Krawitz (rlk@alum.mit.edu) + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +</copyright> +<escp2InkGroup name="pro_ultrachrome_k3v10a"> +<InkList translate="text" name="ultra3photo" text="Photo Black"> + <initSequence>IK\002\000\000\071</initSequence> + <Shades> + <shade count="3">1.000000 0.480000 0.160000</shade> + <shade count="2">1.000000 0.340000</shade> + <shade count="2">1.000000 0.250000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + </Shades> + + <InkName translate="text" name="PhotoCMYK8" text="Eight Color Photo" InkID="CcMmYKk"> + <Channels> + <channel name="photo3_black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + <SubchannelTransitionParam name="DarkGrayTrans"/> + </subchannel> + <subchannel color="0" subchannel="1" name="LightBlack" text="Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + <SubchannelTransitionParam name="DarkGrayTrans"/> + <SubchannelValueParam name="DarkGrayValue"/> + <SubchannelScaleParam name="DarkGrayScale"/> + </subchannel> + <subchannel color="0" subchannel="3" name="LightLightBlack" text="Light Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + <SubchannelTransitionParam name="LightGrayTrans"/> + <SubchannelValueParam name="LightGrayValue"/> + <SubchannelScaleParam name="LightGrayScale"/> + </subchannel> + </channel> + <channel name="photo_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" subchannel="0" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + </subchannel> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + <SubchannelValueParam name="LightCyanValue"/> + <SubchannelScaleParam name="LightCyanScale"/> + </subchannel> + </channel> + <channel name="photo_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" subchannel="0" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + </subchannel> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + <SubchannelValueParam name="LightMagentaValue"/> + <SubchannelScaleParam name="LightMagentaScale"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhotoCMYK7" text="Seven Color Photo" InkID="CcMmYKk"> + <Channels> + <channel name="photo2_black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + <SubchannelTransitionParam name="GrayTrans"/> + </subchannel> + <subchannel color="0" subchannel="1" name="LightBlack" text="Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + <SubchannelTransitionParam name="GrayTrans"/> + <SubchannelValueParam name="GrayValue"/> + <SubchannelScaleParam name="GrayScale"/> + </subchannel> + </channel> + <channel name="photo_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" subchannel="0" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + </subchannel> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + <SubchannelValueParam name="LightCyanValue"/> + <SubchannelScaleParam name="LightCyanScale"/> + </subchannel> + </channel> + <channel name="photo_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" subchannel="0" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + </subchannel> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + <SubchannelValueParam name="LightMagentaValue"/> + <SubchannelScaleParam name="LightMagentaScale"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhotoCMYK" text="Six Color Photo" InkID="CcMmYK"> + <Channels> + <channel name="black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="photo_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" subchannel="0" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + </subchannel> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + <SubchannelValueParam name="LightCyanValue"/> + <SubchannelScaleParam name="LightCyanScale"/> + </subchannel> + </channel> + <channel name="photo_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" subchannel="0" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + </subchannel> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + <SubchannelValueParam name="LightMagentaValue"/> + <SubchannelScaleParam name="LightMagentaScale"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhotoCMY" text="Five Color Photo Composite" InkID="CcMmYK"> + <Channels> + <channel name="photo_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" subchannel="0" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + </subchannel> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + <SubchannelValueParam name="LightCyanValue"/> + <SubchannelScaleParam name="LightCyanScale"/> + </subchannel> + </channel> + <channel name="photo_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" subchannel="0" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + </subchannel> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + <SubchannelValueParam name="LightMagentaValue"/> + <SubchannelScaleParam name="LightMagentaScale"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="CMYK" text="Four Color Standard" InkID="CMYK"> + <Channels> + <channel name="black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="standard_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="standard_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="CMY" text="Three Color Composite" InkID="CMYK"> + <Channels> + <channel name="standard_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="standard_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhysicalCMYKkk" text="Eight Color Raw" InkID="Extended"> + <Channels> + <channel name="black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="extended_black" index="1"> + <subchannel color="0" subchannel="1" name="LightBlack" text="Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="extended_photo3_black" index="2"> + <subchannel color="0" subchannel="3" name="LightLightBlack" text="Light Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="standard_cyan" index="3"> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="extended_cyan" index="4"> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="standard_magenta" index="5"> + <subchannel color="1" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="extended_magenta" index="6"> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="7"> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhysicalCMYKkkOG" text="Ten Color Raw" InkID="Extended"> + <Channels> + <channel name="black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="extended_black" index="1"> + <subchannel color="0" subchannel="1" name="LightBlack" text="Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="extended_photo3_black" index="2"> + <subchannel color="0" subchannel="3" name="LightLightBlack" text="Light Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="standard_cyan" index="3"> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="extended_cyan" index="4"> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="standard_magenta" index="5"> + <subchannel color="1" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="extended_magenta" index="6"> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="7"> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + <channel name="standard_orange" index="8"> + <subchannel color="10" name="Orange" text="Orange" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + <channel name="standard_green" index="9"> + <subchannel color="11" name="Green" text="Green" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> +</InkList> + +<InkList translate="text" name="ultra3matte" text="Matte Black"> + <initSequence>IK\002\000\000\131</initSequence> + <Shades> + <shade count="3">1.000000 0.278000 0.093000</shade> + <shade count="2">1.000000 0.340000</shade> + <shade count="2">1.000000 0.250000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + </Shades> + + <InkName translate="text" name="PhotoCMYK8" text="Eight Color Photo" InkID="CcMmYKk"> + <Channels> + <channel name="photo3_black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + <SubchannelTransitionParam name="DarkGrayTrans"/> + </subchannel> + <subchannel color="0" subchannel="1" name="LightBlack" text="Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + <SubchannelTransitionParam name="DarkGrayTrans"/> + <SubchannelValueParam name="DarkGrayValue"/> + <SubchannelScaleParam name="DarkGrayScale"/> + </subchannel> + <subchannel color="0" subchannel="3" name="LightLightBlack" text="Light Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + <SubchannelTransitionParam name="LightGrayTrans"/> + <SubchannelValueParam name="LightGrayValue"/> + <SubchannelScaleParam name="LightGrayScale"/> + </subchannel> + </channel> + <channel name="photo_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" subchannel="0" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + </subchannel> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + <SubchannelValueParam name="LightCyanValue"/> + <SubchannelScaleParam name="LightCyanScale"/> + </subchannel> + </channel> + <channel name="photo_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" subchannel="0" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + </subchannel> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + <SubchannelValueParam name="LightMagentaValue"/> + <SubchannelScaleParam name="LightMagentaScale"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhotoCMYK7" text="Seven Color Photo" InkID="CcMmYKk"> + <Channels> + <channel name="photo2_black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + <SubchannelTransitionParam name="GrayTrans"/> + </subchannel> + <subchannel color="0" subchannel="1" name="LightBlack" text="Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + <SubchannelTransitionParam name="GrayTrans"/> + <SubchannelValueParam name="GrayValue"/> + <SubchannelScaleParam name="GrayScale"/> + </subchannel> + </channel> + <channel name="photo_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" subchannel="0" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + </subchannel> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + <SubchannelValueParam name="LightCyanValue"/> + <SubchannelScaleParam name="LightCyanScale"/> + </subchannel> + </channel> + <channel name="photo_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" subchannel="0" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + </subchannel> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + <SubchannelValueParam name="LightMagentaValue"/> + <SubchannelScaleParam name="LightMagentaScale"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhotoCMYK" text="Six Color Photo" InkID="CcMmYK"> + <Channels> + <channel name="black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="photo_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" subchannel="0" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + </subchannel> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + <SubchannelValueParam name="LightCyanValue"/> + <SubchannelScaleParam name="LightCyanScale"/> + </subchannel> + </channel> + <channel name="photo_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" subchannel="0" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + </subchannel> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + <SubchannelValueParam name="LightMagentaValue"/> + <SubchannelScaleParam name="LightMagentaScale"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhotoCMY" text="Five Color Photo Composite" InkID="CcMmYK"> + <Channels> + <channel name="photo_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" subchannel="0" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + </subchannel> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + <SubchannelValueParam name="LightCyanValue"/> + <SubchannelScaleParam name="LightCyanScale"/> + </subchannel> + </channel> + <channel name="photo_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" subchannel="0" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + </subchannel> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + <SubchannelValueParam name="LightMagentaValue"/> + <SubchannelScaleParam name="LightMagentaScale"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="CMYK" text="Four Color Standard" InkID="CMYK"> + <Channels> + <channel name="black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="standard_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="standard_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="CMY" text="Three Color Composite" InkID="CMYK"> + <Channels> + <channel name="standard_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="standard_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhysicalCMYKkk" text="Eight Color Raw" InkID="Extended"> + <Channels> + <channel name="black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="extended_black" index="1"> + <subchannel color="0" subchannel="1" name="LightBlack" text="Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="extended_photo3_black" index="2"> + <subchannel color="0" subchannel="3" name="LightLightBlack" text="Light Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="standard_cyan" index="3"> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="extended_cyan" index="4"> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="standard_magenta" index="5"> + <subchannel color="1" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="extended_magenta" index="6"> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="7"> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhysicalCMYKkkOG" text="Ten Color Raw" InkID="Extended"> + <Channels> + <channel name="black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="extended_black" index="1"> + <subchannel color="0" subchannel="1" name="LightBlack" text="Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="extended_photo3_black" index="2"> + <subchannel color="0" subchannel="3" name="LightLightBlack" text="Light Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="standard_cyan" index="3"> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="extended_cyan" index="4"> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="standard_magenta" index="5"> + <subchannel color="1" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="extended_magenta" index="6"> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="7"> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + <channel name="standard_orange" index="8"> + <subchannel color="10" name="Orange" text="Orange" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + <channel name="standard_green" index="9"> + <subchannel color="11" name="Green" text="Green" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> +</InkList> +</escp2InkGroup> +</gutenprint> diff --git a/src/xml/escp2/inks/pro_ultrachrome_k3v10b.xml b/src/xml/escp2/inks/pro_ultrachrome_k3v10b.xml new file mode 100644 index 0000000..f643cd4 --- /dev/null +++ b/src/xml/escp2/inks/pro_ultrachrome_k3v10b.xml @@ -0,0 +1,614 @@ +<?xml version="1.0"?> + +<gutenprint xmlns="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0" +xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" +xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint.xsd"> +<copyright> + * Copyright 2008 Robert Krawitz (rlk@alum.mit.edu) + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +</copyright> +<escp2InkGroup name="pro_ultrachrome_k3v10b"> +<InkList translate="text" name="ultra3photo" text="Photo Black"> + <initSequence>IK\002\000\000\071</initSequence> + <Shades> + <shade count="3">1.000000 0.480000</shade> + <shade count="2">1.000000 0.340000</shade> + <shade count="2">1.000000 0.250000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + </Shades> + + <InkName translate="text" name="PhotoCMYK7" text="Seven Color Photo" InkID="CcMmYKk"> + <Channels> + <channel name="photo2_black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + <SubchannelTransitionParam name="GrayTrans"/> + </subchannel> + <subchannel color="0" subchannel="1" name="LightBlack" text="Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + <SubchannelTransitionParam name="GrayTrans"/> + <SubchannelValueParam name="GrayValue"/> + <SubchannelScaleParam name="GrayScale"/> + </subchannel> + </channel> + <channel name="photo_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" subchannel="0" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + </subchannel> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + <SubchannelValueParam name="LightCyanValue"/> + <SubchannelScaleParam name="LightCyanScale"/> + </subchannel> + </channel> + <channel name="photo_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" subchannel="0" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + </subchannel> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + <SubchannelValueParam name="LightMagentaValue"/> + <SubchannelScaleParam name="LightMagentaScale"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhotoCMYK" text="Six Color Photo" InkID="CcMmYK"> + <Channels> + <channel name="black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="photo_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" subchannel="0" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + </subchannel> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + <SubchannelValueParam name="LightCyanValue"/> + <SubchannelScaleParam name="LightCyanScale"/> + </subchannel> + </channel> + <channel name="photo_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" subchannel="0" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + </subchannel> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + <SubchannelValueParam name="LightMagentaValue"/> + <SubchannelScaleParam name="LightMagentaScale"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhotoCMY" text="Five Color Photo Composite" InkID="CcMmYK"> + <Channels> + <channel name="photo_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" subchannel="0" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + </subchannel> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + <SubchannelValueParam name="LightCyanValue"/> + <SubchannelScaleParam name="LightCyanScale"/> + </subchannel> + </channel> + <channel name="photo_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" subchannel="0" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + </subchannel> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + <SubchannelValueParam name="LightMagentaValue"/> + <SubchannelScaleParam name="LightMagentaScale"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="CMYK" text="Four Color Standard" InkID="CMYK"> + <Channels> + <channel name="black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="standard_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="standard_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="CMY" text="Three Color Composite" InkID="CMYK"> + <Channels> + <channel name="standard_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="standard_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhysicalCMYKkk" text="Eight Color Raw" InkID="Extended"> + <Channels> + <channel name="black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="extended_black" index="1"> + <subchannel color="0" subchannel="1" name="LightBlack" text="Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="extended_photo3_black" index="2"> + <subchannel color="0" subchannel="3" name="LightLightBlack" text="Light Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="standard_cyan" index="3"> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="extended_cyan" index="4"> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="standard_magenta" index="5"> + <subchannel color="1" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="extended_magenta" index="6"> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="7"> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhysicalCMYKkkOG" text="Ten Color Raw" InkID="Extended"> + <Channels> + <channel name="black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="extended_black" index="1"> + <subchannel color="0" subchannel="1" name="LightBlack" text="Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="extended_photo3_black" index="2"> + <subchannel color="0" subchannel="3" name="LightLightBlack" text="Light Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="standard_cyan" index="3"> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="extended_cyan" index="4"> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="standard_magenta" index="5"> + <subchannel color="1" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="extended_magenta" index="6"> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="7"> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + <channel name="standard_orange" index="8"> + <subchannel color="10" name="Orange" text="Orange" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + <channel name="standard_green" index="9"> + <subchannel color="11" name="Green" text="Green" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> +</InkList> + +<InkList translate="text" name="ultra3matte" text="Matte Black"> + <initSequence>IK\002\000\000\131</initSequence> + <Shades> + <shade count="3">1.000000 0.278000</shade> + <shade count="2">1.000000 0.340000</shade> + <shade count="2">1.000000 0.250000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + </Shades> + + <InkName translate="text" name="PhotoCMYK7" text="Seven Color Photo" InkID="CcMmYKk"> + <Channels> + <channel name="photo2_black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + <SubchannelTransitionParam name="GrayTrans"/> + </subchannel> + <subchannel color="0" subchannel="1" name="LightBlack" text="Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + <SubchannelTransitionParam name="GrayTrans"/> + <SubchannelValueParam name="GrayValue"/> + <SubchannelScaleParam name="GrayScale"/> + </subchannel> + </channel> + <channel name="photo_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" subchannel="0" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + </subchannel> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + <SubchannelValueParam name="LightCyanValue"/> + <SubchannelScaleParam name="LightCyanScale"/> + </subchannel> + </channel> + <channel name="photo_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" subchannel="0" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + </subchannel> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + <SubchannelValueParam name="LightMagentaValue"/> + <SubchannelScaleParam name="LightMagentaScale"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhotoCMYK" text="Six Color Photo" InkID="CcMmYK"> + <Channels> + <channel name="black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="photo_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" subchannel="0" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + </subchannel> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + <SubchannelValueParam name="LightCyanValue"/> + <SubchannelScaleParam name="LightCyanScale"/> + </subchannel> + </channel> + <channel name="photo_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" subchannel="0" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + </subchannel> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + <SubchannelValueParam name="LightMagentaValue"/> + <SubchannelScaleParam name="LightMagentaScale"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhotoCMY" text="Five Color Photo Composite" InkID="CcMmYK"> + <Channels> + <channel name="photo_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" subchannel="0" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + </subchannel> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + <SubchannelTransitionParam name="LightCyanTrans"/> + <SubchannelValueParam name="LightCyanValue"/> + <SubchannelScaleParam name="LightCyanScale"/> + </subchannel> + </channel> + <channel name="photo_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" subchannel="0" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + </subchannel> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + <SubchannelTransitionParam name="LightMagentaTrans"/> + <SubchannelValueParam name="LightMagentaValue"/> + <SubchannelScaleParam name="LightMagentaScale"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="CMYK" text="Four Color Standard" InkID="CMYK"> + <Channels> + <channel name="black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="standard_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="standard_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="CMY" text="Three Color Composite" InkID="CMYK"> + <Channels> + <channel name="standard_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="standard_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhysicalCMYKkk" text="Eight Color Raw" InkID="Extended"> + <Channels> + <channel name="black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="extended_black" index="1"> + <subchannel color="0" subchannel="1" name="LightBlack" text="Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="extended_photo3_black" index="2"> + <subchannel color="0" subchannel="3" name="LightLightBlack" text="Light Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="standard_cyan" index="3"> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="extended_cyan" index="4"> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="standard_magenta" index="5"> + <subchannel color="1" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="extended_magenta" index="6"> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="7"> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhysicalCMYKkkOG" text="Ten Color Raw" InkID="Extended"> + <Channels> + <channel name="black" index="0"> + <subchannel color="0" subchannel="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="extended_black" index="1"> + <subchannel color="0" subchannel="1" name="LightBlack" text="Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="extended_photo3_black" index="2"> + <subchannel color="0" subchannel="3" name="LightLightBlack" text="Light Light Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="standard_cyan" index="3"> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="extended_cyan" index="4"> + <subchannel color="2" subchannel="1" name="LightCyan" text="Light Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="standard_magenta" index="5"> + <subchannel color="1" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="extended_magenta" index="6"> + <subchannel color="1" subchannel="1" name="LightMagenta" text="Light Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="standard_yellow" index="7"> + <subchannel color="4" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + <channel name="standard_orange" index="8"> + <subchannel color="10" name="Orange" text="Orange" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + <channel name="standard_green" index="9"> + <subchannel color="11" name="Green" text="Green" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> +</InkList> +</escp2InkGroup> +</gutenprint> diff --git a/src/xml/escp2/inks/xp100.xml b/src/xml/escp2/inks/xp100.xml new file mode 100644 index 0000000..0c41f0f --- /dev/null +++ b/src/xml/escp2/inks/xp100.xml @@ -0,0 +1,139 @@ +<?xml version="1.0"?> + +<gutenprint xmlns="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0" +xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" +xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint.xsd"> +<copyright> + * Copyright 2008 Robert Krawitz (rlk@alum.mit.edu) + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1287, USA. +</copyright> +<escp2InkGroup name="xp100"> +<InkList translate="text" name="None" text="EPSON Standard Inks"> + <Shades> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + <shade count="1">1.000000</shade> + </Shades> + + <InkName translate="text" name="CMYK" text="Four Color Standard" InkID="CMYK"> + <Channels> + <channel name="c64_black" index="0"> + <subchannel color="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="c64_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="c64_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" headOffset="130" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="c64_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" headOffset="260" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="RGB" text="Three Color Composite" InkID="CMYK"> + <Channels> + <channel name="c64_cyan" index="1"> + <HueCurveParam name="CyanHueCurve"/> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="c64_magenta" index="2"> + <HueCurveParam name="MagentaHueCurve"/> + <subchannel color="1" headOffset="130" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="c64_yellow" index="3"> + <HueCurveParam name="YellowHueCurve"/> + <subchannel color="4" headOffset="260" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhysicalBlack" text="One Color Raw" InkID="Extended"> + <Channels> + <channel name="standard_black" index="0"> + <subchannel color="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhysicalCMY" text="Three Color Raw" InkID="Extended"> + <Channels> + <channel name="c64_cyan" index="0"> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="c64_magenta" index="1"> + <subchannel color="1" headOffset="130" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="c64_yellow" index="2"> + <subchannel color="4" headOffset="260" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> + + <InkName translate="text" name="PhysicalCMYK" text="Four Color Raw" InkID="Extended"> + <Channels> + <channel name="c64_black" index="0"> + <subchannel color="0" name="Black" text="Black" translate="text"> + <ChannelDensityParam name="BlackDensity"/> + </subchannel> + </channel> + <channel name="c64_cyan" index="1"> + <subchannel color="2" name="Cyan" text="Cyan" translate="text"> + <ChannelDensityParam name="CyanDensity"/> + </subchannel> + </channel> + <channel name="c64_magenta" index="2"> + <subchannel color="1" headOffset="130" name="Magenta" text="Magenta" translate="text"> + <ChannelDensityParam name="MagentaDensity"/> + </subchannel> + </channel> + <channel name="c64_yellow" index="3"> + <subchannel color="4" headOffset="260" name="Yellow" text="Yellow" translate="text"> + <ChannelDensityParam name="YellowDensity"/> + </subchannel> + </channel> + </Channels> + </InkName> +</InkList> +</escp2InkGroup> +</gutenprint> diff --git a/src/xml/escp2/inputslots/Makefile.am b/src/xml/escp2/inputslots/Makefile.am index 5f12b48..87fc177 100644 --- a/src/xml/escp2/inputslots/Makefile.am +++ b/src/xml/escp2/inputslots/Makefile.am @@ -1,4 +1,3 @@ -## $Id: Makefile.am,v 1.12 2013/03/17 21:17:37 rlk Exp $ ## Copyright (C) 2008 Robert Krawitz ## ## This program is free software; you can redistribute it and/or modify diff --git a/src/xml/escp2/inputslots/Makefile.in b/src/xml/escp2/inputslots/Makefile.in index e8cec78..c323768 100644 --- a/src/xml/escp2/inputslots/Makefile.in +++ b/src/xml/escp2/inputslots/Makefile.in @@ -84,23 +84,22 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(top_srcdir)/scripts/global.mk $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/scripts/mkinstalldirs + $(srcdir)/Makefile.am subdir = src/xml/escp2/inputslots ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/isc-posix.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stp.m4 \ - $(top_srcdir)/m4/stp_cups.m4 $(top_srcdir)/m4/stp_gimp.m4 \ - $(top_srcdir)/m4/stp_option.m4 $(top_srcdir)/m4/stp_release.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/stp.m4 $(top_srcdir)/m4/stp_cups.m4 \ + $(top_srcdir)/m4/stp_gimp.m4 $(top_srcdir)/m4/stp_option.m4 \ + $(top_srcdir)/m4/stp_release.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/scripts/mkinstalldirs +mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = @@ -196,9 +195,6 @@ ENABLE_STATIC = @ENABLE_STATIC@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FIND = @FIND@ -FOOMATIC_CONFIGURE = @FOOMATIC_CONFIGURE@ -FOOMATIC_KITLOAD = @FOOMATIC_KITLOAD@ -FOOMATIC_PPDFILE = @FOOMATIC_PPDFILE@ GENPPD_LIBS = @GENPPD_LIBS@ GIMP2_CFLAGS = @GIMP2_CFLAGS@ GIMP2_LIBS = @GIMP2_LIBS@ @@ -231,9 +227,6 @@ GUTENPRINT_MICRO_VERSION = @GUTENPRINT_MICRO_VERSION@ GUTENPRINT_MINOR_VERSION = @GUTENPRINT_MINOR_VERSION@ GUTENPRINT_RELEASE_VERSION = @GUTENPRINT_RELEASE_VERSION@ GUTENPRINT_VERSION = @GUTENPRINT_VERSION@ -IJS_CFLAGS = @IJS_CFLAGS@ -IJS_CONFIG = @IJS_CONFIG@ -IJS_LIBS = @IJS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -254,6 +247,7 @@ LIBREADLINE_DEPS = @LIBREADLINE_DEPS@ LIBS = $(INTLLIBS) @LIBS@ LIBTOOL = @LIBTOOL@ LIBTOOL_DEPS = @LIBTOOL_DEPS@ +LIBUSB_BACKEND_LIBDEPS = @LIBUSB_BACKEND_LIBDEPS@ LIBUSB_CFLAGS = @LIBUSB_CFLAGS@ LIBUSB_LIBS = @LIBUSB_LIBS@ LIPO = @LIPO@ diff --git a/src/xml/escp2/media/Makefile.am b/src/xml/escp2/media/Makefile.am index 09ea15b..c152ae8 100644 --- a/src/xml/escp2/media/Makefile.am +++ b/src/xml/escp2/media/Makefile.am @@ -1,4 +1,3 @@ -## $Id: Makefile.am,v 1.16 2014/01/23 13:22:42 rlk Exp $ ## Copyright (C) 2008 Robert Krawitz ## ## This program is free software; you can redistribute it and/or modify @@ -62,6 +61,8 @@ pkgxmldata_DATA = \ pro_ultrachrome_k3.xml \ pro_ultrachrome_k3v.xml \ pro_ultrachrome_k3v10.xml \ + pro_ultrachrome_k3v10a.xml \ + pro_ultrachrome_k3v10b.xml \ r800.xml \ standard.xml \ standard_gen0.xml \ diff --git a/src/xml/escp2/media/Makefile.in b/src/xml/escp2/media/Makefile.in index 062fae0..5cda659 100644 --- a/src/xml/escp2/media/Makefile.in +++ b/src/xml/escp2/media/Makefile.in @@ -84,23 +84,22 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(top_srcdir)/scripts/global.mk $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/scripts/mkinstalldirs + $(srcdir)/Makefile.am subdir = src/xml/escp2/media ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/isc-posix.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stp.m4 \ - $(top_srcdir)/m4/stp_cups.m4 $(top_srcdir)/m4/stp_gimp.m4 \ - $(top_srcdir)/m4/stp_option.m4 $(top_srcdir)/m4/stp_release.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/stp.m4 $(top_srcdir)/m4/stp_cups.m4 \ + $(top_srcdir)/m4/stp_gimp.m4 $(top_srcdir)/m4/stp_option.m4 \ + $(top_srcdir)/m4/stp_release.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/scripts/mkinstalldirs +mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = @@ -196,9 +195,6 @@ ENABLE_STATIC = @ENABLE_STATIC@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FIND = @FIND@ -FOOMATIC_CONFIGURE = @FOOMATIC_CONFIGURE@ -FOOMATIC_KITLOAD = @FOOMATIC_KITLOAD@ -FOOMATIC_PPDFILE = @FOOMATIC_PPDFILE@ GENPPD_LIBS = @GENPPD_LIBS@ GIMP2_CFLAGS = @GIMP2_CFLAGS@ GIMP2_LIBS = @GIMP2_LIBS@ @@ -231,9 +227,6 @@ GUTENPRINT_MICRO_VERSION = @GUTENPRINT_MICRO_VERSION@ GUTENPRINT_MINOR_VERSION = @GUTENPRINT_MINOR_VERSION@ GUTENPRINT_RELEASE_VERSION = @GUTENPRINT_RELEASE_VERSION@ GUTENPRINT_VERSION = @GUTENPRINT_VERSION@ -IJS_CFLAGS = @IJS_CFLAGS@ -IJS_CONFIG = @IJS_CONFIG@ -IJS_LIBS = @IJS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -254,6 +247,7 @@ LIBREADLINE_DEPS = @LIBREADLINE_DEPS@ LIBS = $(INTLLIBS) @LIBS@ LIBTOOL = @LIBTOOL@ LIBTOOL_DEPS = @LIBTOOL_DEPS@ +LIBUSB_BACKEND_LIBDEPS = @LIBUSB_BACKEND_LIBDEPS@ LIBUSB_CFLAGS = @LIBUSB_CFLAGS@ LIBUSB_LIBS = @LIBUSB_LIBS@ LIPO = @LIPO@ @@ -413,6 +407,8 @@ pkgxmldata_DATA = \ pro_ultrachrome_k3.xml \ pro_ultrachrome_k3v.xml \ pro_ultrachrome_k3v10.xml \ + pro_ultrachrome_k3v10a.xml \ + pro_ultrachrome_k3v10b.xml \ r800.xml \ standard.xml \ standard_gen0.xml \ diff --git a/src/xml/escp2/media/pro_ultrachrome_k3v10a.xml b/src/xml/escp2/media/pro_ultrachrome_k3v10a.xml new file mode 100644 index 0000000..f8baa0e --- /dev/null +++ b/src/xml/escp2/media/pro_ultrachrome_k3v10a.xml @@ -0,0 +1,925 @@ +<?xml version="1.0"?> + +<gutenprint xmlns="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0" +xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" +xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint.xsd"> +<copyright> + * Copyright 2008 Robert Krawitz (rlk@alum.mit.edu) + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +</copyright> +<escp2Papers name="pro_ultrachrome_k3v10a"> +<feature name="PlatenGap"/> +<feature name="PaperThickness"/> +<feature name="VacuumIntensity"/> +<feature name="FeedAdjustment"/> +<feature name="PageDryTime"/> +<feature name="ScanDryTime"/> +<feature name="ScanMinDryTime"/> +<Curves> + <namedParam name="hue_map"> + <curve wrap="wrap" type="linear" gamma="0" piecewise="false"> + <sequence count="48" lower-bound="-6" upper-bound="6"> + 0 0.06 0.1 0.1 0.06 0 -0.06 -0.12 + -0.18 -0.21 -0.22 -0.22 -0.22 -0.22 -0.22 -0.22 + -0.22 -0.28 -0.34 -0.4 -0.5 -0.4 -0.3 -0.2 + -0.12 -0.07 -0.04 -0.02 0 0 0 0 + 0 0 -0.03 -0.07 -0.11 -0.15 -0.17 -0.18 + -0.19 -0.2 -0.19 -0.18 -0.16 -0.12 -0.08 -0.04 + </sequence> + </curve> + </namedParam> + <namedParam name="lum_map"> + <curve wrap="wrap" type="linear" gamma="0" piecewise="false"> + <sequence count="48" lower-bound="0" upper-bound="4"> + 0.55 0.57 0.61 0.64 0.67 0.69 0.72 0.75 + 0.83 0.8 0.76 0.76 0.78 0.79 0.83 0.86 + 0.93 0.95 0.97 0.97 0.97 0.97 0.96 0.96 + 0.96 0.97 0.97 0.98 0.99 1 1 1 + 1 0.98 0.97 0.95 0.93 0.91 0.88 0.83 + 0.83 0.71 0.65 0.61 0.58 0.56 0.55 0.55 + </sequence> + </curve> + </namedParam> + <namedParam name="sat_map"> + <curve wrap="wrap" type="linear" gamma="0" piecewise="false"> + <sequence count="48" lower-bound="0" upper-bound="4"> + 1 1 1 1.05 1.1 1.15 1.15 1.15 + 1.15 1.15 1.15 1.1 1.1 1.05 1.05 1 + 1 1 1 1 1 1 1 1 + 1 1 1 1 1 1 1 1 + 1 1.05 1.15 1.25 1.35 1.45 1.5 1.5 + 1.5 1.5 1.5 1.45 1.35 1.25 1.15 1.05 + </sequence> + </curve> + </namedParam> + <namedParam name="premium_hue_map"> + <curve wrap="wrap" type="linear" gamma="0" piecewise="false"> + <sequence count="48" lower-bound="-6" upper-bound="6"> + 0 0.06 0.1 0.1 0.06 0 -0.06 -0.12 + -0.18 -0.21 -0.22 -0.22 -0.22 -0.22 -0.22 -0.22 + -0.22 -0.28 -0.34 -0.4 -0.5 -0.4 -0.3 -0.2 + -0.12 -0.07 -0.04 -0.02 0 0 0 0 + 0 0 -0.03 -0.07 -0.11 -0.15 -0.19 -0.22 + -0.25 -0.22 -0.19 -0.15 -0.12 -0.1 -0.06 -0.03 + </sequence> + </curve> + </namedParam> + <namedParam name="premium_lum_map"> + <curve wrap="wrap" type="linear" gamma="0" piecewise="false"> + <sequence count="48" lower-bound="0" upper-bound="4"> + 0.55 0.57 0.61 0.64 0.67 0.69 0.72 0.75 + 0.75 0.71 0.7 0.7 0.72 0.76 0.81 0.87 + 0.93 0.95 0.97 0.98 0.98 0.97 0.96 0.96 + 0.96 0.97 0.98 0.98 0.99 1 1 1 + 1 0.98 0.97 0.96 0.95 0.93 0.9 0.87 + 0.83 0.71 0.65 0.61 0.58 0.56 0.55 0.55 + </sequence> + </curve> + </namedParam> + <namedParam name="premium_sat_map"> + <curve wrap="wrap" type="linear" gamma="0" piecewise="false"> + <sequence count="48" lower-bound="0" upper-bound="4"> + 1 1 1 1.05 1.1 1.15 1.15 1.15 + 1.15 1.15 1.15 1.1 1.1 1.05 1.05 1 + 1 1 1 1 1 1 1 1 + 1 1 1 1 1 1 1 1 + 1 1.05 1.15 1.25 1.35 1.45 1.5 1.5 + 1.5 1.5 1.5 1.45 1.35 1.25 1.15 1.05 + </sequence> + </curve> + </namedParam> +</Curves> +<paper translate="text" name="Plain" text="Plain Paper" class="plain" PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperMedia">0</parameter> + <parameter type="integer" name="PaperThickness">1</parameter> + <parameter type="integer" name="VacuumIntensity">26</parameter> + <parameter type="integer" name="FeedAdjustment">107</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.100000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Postcard" text="Postcard" class="plain" PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperMedia">1</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">0</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.100000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="GlossyFilm" text="Glossy Film" class="photo" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">7</parameter> + <parameter type="integer" name="PaperThickness">1</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">109</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Transparency" text="Transparencies" class="transparency" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">9</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">109</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.750000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Envelope" text="Envelopes" class="plain" PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperMedia">1</parameter> + <parameter type="integer" name="PaperThickness">1</parameter> + <parameter type="integer" name="VacuumIntensity">26</parameter> + <parameter type="integer" name="FeedAdjustment">107</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.100000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="BackFilm" text="Back Light Film" class="transparency" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">10</parameter> + <parameter type="integer" name="PaperThickness">1</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">109</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.750000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Matte" text="Matte Paper" class="good" PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperMedia">3</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">0</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.920000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.920000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="MatteHeavy" text="Matte Paper Heavyweight" class="good" PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperMedia">5</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">0</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.920000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.920000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Inkjet" text="Inkjet Paper" class="good" PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperMedia">1</parameter> + <parameter type="integer" name="PaperThickness">1</parameter> + <parameter type="integer" name="VacuumIntensity">26</parameter> + <parameter type="integer" name="FeedAdjustment">107</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.300000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Coated" text="Photo Quality Inkjet Paper" class="good" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">3</parameter> + <parameter type="integer" name="PaperThickness">1</parameter> + <parameter type="integer" name="VacuumIntensity">26</parameter> + <parameter type="integer" name="FeedAdjustment">107</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.400000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Photo" text="Photo Paper" class="photo" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">6</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">103</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">1.000000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">1.000000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="GlossyPhoto" text="Premium Glossy Photo Paper" class="premium" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">11</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">128</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">0.920000</parameter> + <parameter type="curve" name="HueMap" ref="premium_hue_map"/> + <parameter type="curve" name="LumMap" ref="premium_lum_map"/> + <parameter type="curve" name="SatMap" ref="premium_sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">1.000000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">0.920000</parameter> + <parameter type="curve" name="HueMap" ref="premium_hue_map"/> + <parameter type="curve" name="LumMap" ref="premium_lum_map"/> + <parameter type="curve" name="SatMap" ref="premium_sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Semigloss" text="Premium Semigloss Photo Paper" class="premium" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">12</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">128</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">0.920000</parameter> + <parameter type="curve" name="HueMap" ref="premium_hue_map"/> + <parameter type="curve" name="LumMap" ref="premium_lum_map"/> + <parameter type="curve" name="SatMap" ref="premium_sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.800000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">0.920000</parameter> + <parameter type="curve" name="HueMap" ref="premium_hue_map"/> + <parameter type="curve" name="LumMap" ref="premium_lum_map"/> + <parameter type="curve" name="SatMap" ref="premium_sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Luster" text="Premium Luster Photo Paper" class="premium" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">13</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">128</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">0.920000</parameter> + <parameter type="curve" name="HueMap" ref="premium_hue_map"/> + <parameter type="curve" name="LumMap" ref="premium_lum_map"/> + <parameter type="curve" name="SatMap" ref="premium_sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.800000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">0.920000</parameter> + <parameter type="curve" name="HueMap" ref="premium_hue_map"/> + <parameter type="curve" name="LumMap" ref="premium_lum_map"/> + <parameter type="curve" name="SatMap" ref="premium_sat_map"/> + </ink> +</paper> + +<paper translate="text" name="ArchivalMatte" text="Archival Matte Paper" class="premium" PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperMedia">15</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">0</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.920000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.920000</parameter> + <parameter type="float" name="SubchannelCutoff">0.400000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">0.600000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + </paper> + +<paper translate="text" name="WaterColorRadiant" text="Watercolor Paper - Radiant White" class="premium" PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperMedia">15</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">0</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.920000</parameter> + <parameter type="float" name="SubchannelCutoff">0.800000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.920000</parameter> + <parameter type="float" name="SubchannelCutoff">0.400000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="GlossyPaper" text="Photo Quality Glossy Paper" class="photo" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">19</parameter> + <parameter type="integer" name="PaperThickness">1</parameter> + <parameter type="integer" name="VacuumIntensity">26</parameter> + <parameter type="integer" name="FeedAdjustment">107</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Ilford" text="Ilford Heavy Paper" class="premium" PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperMedia">15</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">128</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="ColorLife" text="ColorLife Paper" class="premium" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">23</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">103</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Other" text="Other" class="plain" +PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperThickness">1</parameter> + <parameter type="integer" name="VacuumIntensity">26</parameter> + <parameter type="integer" name="FeedAdjustment">107</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.100000</parameter> + <parameter type="float" name="BlackTrans">0.400000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> +</escp2Papers> +</gutenprint> diff --git a/src/xml/escp2/media/pro_ultrachrome_k3v10b.xml b/src/xml/escp2/media/pro_ultrachrome_k3v10b.xml new file mode 100644 index 0000000..14df009 --- /dev/null +++ b/src/xml/escp2/media/pro_ultrachrome_k3v10b.xml @@ -0,0 +1,925 @@ +<?xml version="1.0"?> + +<gutenprint xmlns="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0" +xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" +xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint.xsd"> +<copyright> + * Copyright 2008 Robert Krawitz (rlk@alum.mit.edu) + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +</copyright> +<escp2Papers name="pro_ultrachrome_k3v10b"> +<feature name="PlatenGap"/> +<feature name="PaperThickness"/> +<feature name="VacuumIntensity"/> +<feature name="FeedAdjustment"/> +<feature name="PageDryTime"/> +<feature name="ScanDryTime"/> +<feature name="ScanMinDryTime"/> +<Curves> + <namedParam name="hue_map"> + <curve wrap="wrap" type="linear" gamma="0" piecewise="false"> + <sequence count="48" lower-bound="-6" upper-bound="6"> + 0 0.06 0.1 0.1 0.06 0 -0.06 -0.12 + -0.18 -0.21 -0.22 -0.22 -0.22 -0.22 -0.22 -0.22 + -0.22 -0.28 -0.34 -0.4 -0.5 -0.4 -0.3 -0.2 + -0.12 -0.07 -0.04 -0.02 0 0 0 0 + 0 0 -0.03 -0.07 -0.11 -0.15 -0.17 -0.18 + -0.19 -0.2 -0.19 -0.18 -0.16 -0.12 -0.08 -0.04 + </sequence> + </curve> + </namedParam> + <namedParam name="lum_map"> + <curve wrap="wrap" type="linear" gamma="0" piecewise="false"> + <sequence count="48" lower-bound="0" upper-bound="4"> + 0.55 0.57 0.61 0.64 0.67 0.69 0.72 0.75 + 0.83 0.8 0.76 0.76 0.78 0.79 0.83 0.86 + 0.93 0.95 0.97 0.97 0.97 0.97 0.96 0.96 + 0.96 0.97 0.97 0.98 0.99 1 1 1 + 1 0.98 0.97 0.95 0.93 0.91 0.88 0.83 + 0.83 0.71 0.65 0.61 0.58 0.56 0.55 0.55 + </sequence> + </curve> + </namedParam> + <namedParam name="sat_map"> + <curve wrap="wrap" type="linear" gamma="0" piecewise="false"> + <sequence count="48" lower-bound="0" upper-bound="4"> + 1 1 1 1.05 1.1 1.15 1.15 1.15 + 1.15 1.15 1.15 1.1 1.1 1.05 1.05 1 + 1 1 1 1 1 1 1 1 + 1 1 1 1 1 1 1 1 + 1 1.05 1.15 1.25 1.35 1.45 1.5 1.5 + 1.5 1.5 1.5 1.45 1.35 1.25 1.15 1.05 + </sequence> + </curve> + </namedParam> + <namedParam name="premium_hue_map"> + <curve wrap="wrap" type="linear" gamma="0" piecewise="false"> + <sequence count="48" lower-bound="-6" upper-bound="6"> + 0 0.06 0.1 0.1 0.06 0 -0.06 -0.12 + -0.18 -0.21 -0.22 -0.22 -0.22 -0.22 -0.22 -0.22 + -0.22 -0.28 -0.34 -0.4 -0.5 -0.4 -0.3 -0.2 + -0.12 -0.07 -0.04 -0.02 0 0 0 0 + 0 0 -0.03 -0.07 -0.11 -0.15 -0.19 -0.22 + -0.25 -0.22 -0.19 -0.15 -0.12 -0.1 -0.06 -0.03 + </sequence> + </curve> + </namedParam> + <namedParam name="premium_lum_map"> + <curve wrap="wrap" type="linear" gamma="0" piecewise="false"> + <sequence count="48" lower-bound="0" upper-bound="4"> + 0.55 0.57 0.61 0.64 0.67 0.69 0.72 0.75 + 0.75 0.71 0.7 0.7 0.72 0.76 0.81 0.87 + 0.93 0.95 0.97 0.98 0.98 0.97 0.96 0.96 + 0.96 0.97 0.98 0.98 0.99 1 1 1 + 1 0.98 0.97 0.96 0.95 0.93 0.9 0.87 + 0.83 0.71 0.65 0.61 0.58 0.56 0.55 0.55 + </sequence> + </curve> + </namedParam> + <namedParam name="premium_sat_map"> + <curve wrap="wrap" type="linear" gamma="0" piecewise="false"> + <sequence count="48" lower-bound="0" upper-bound="4"> + 1 1 1 1.05 1.1 1.15 1.15 1.15 + 1.15 1.15 1.15 1.1 1.1 1.05 1.05 1 + 1 1 1 1 1 1 1 1 + 1 1 1 1 1 1 1 1 + 1 1.05 1.15 1.25 1.35 1.45 1.5 1.5 + 1.5 1.5 1.5 1.45 1.35 1.25 1.15 1.05 + </sequence> + </curve> + </namedParam> +</Curves> +<paper translate="text" name="Plain" text="Plain Paper" class="plain" PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperMedia">0</parameter> + <parameter type="integer" name="PaperThickness">1</parameter> + <parameter type="integer" name="VacuumIntensity">26</parameter> + <parameter type="integer" name="FeedAdjustment">107</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.100000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Postcard" text="Postcard" class="plain" PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperMedia">1</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">0</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.100000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="GlossyFilm" text="Glossy Film" class="photo" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">7</parameter> + <parameter type="integer" name="PaperThickness">1</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">109</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Transparency" text="Transparencies" class="transparency" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">9</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">109</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.750000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Envelope" text="Envelopes" class="plain" PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperMedia">1</parameter> + <parameter type="integer" name="PaperThickness">1</parameter> + <parameter type="integer" name="VacuumIntensity">26</parameter> + <parameter type="integer" name="FeedAdjustment">107</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.100000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="BackFilm" text="Back Light Film" class="transparency" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">10</parameter> + <parameter type="integer" name="PaperThickness">1</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">109</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.750000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Matte" text="Matte Paper" class="good" PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperMedia">3</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">0</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.920000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.920000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="MatteHeavy" text="Matte Paper Heavyweight" class="good" PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperMedia">5</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">0</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.920000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.920000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Inkjet" text="Inkjet Paper" class="good" PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperMedia">1</parameter> + <parameter type="integer" name="PaperThickness">1</parameter> + <parameter type="integer" name="VacuumIntensity">26</parameter> + <parameter type="integer" name="FeedAdjustment">107</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.300000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Coated" text="Photo Quality Inkjet Paper" class="good" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">3</parameter> + <parameter type="integer" name="PaperThickness">1</parameter> + <parameter type="integer" name="VacuumIntensity">26</parameter> + <parameter type="integer" name="FeedAdjustment">107</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.400000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Photo" text="Photo Paper" class="photo" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">6</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">103</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">1.000000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">1.000000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="GlossyPhoto" text="Premium Glossy Photo Paper" class="premium" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">11</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">128</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">0.920000</parameter> + <parameter type="curve" name="HueMap" ref="premium_hue_map"/> + <parameter type="curve" name="LumMap" ref="premium_lum_map"/> + <parameter type="curve" name="SatMap" ref="premium_sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">1.000000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">0.920000</parameter> + <parameter type="curve" name="HueMap" ref="premium_hue_map"/> + <parameter type="curve" name="LumMap" ref="premium_lum_map"/> + <parameter type="curve" name="SatMap" ref="premium_sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Semigloss" text="Premium Semigloss Photo Paper" class="premium" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">12</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">128</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">0.920000</parameter> + <parameter type="curve" name="HueMap" ref="premium_hue_map"/> + <parameter type="curve" name="LumMap" ref="premium_lum_map"/> + <parameter type="curve" name="SatMap" ref="premium_sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.800000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">0.920000</parameter> + <parameter type="curve" name="HueMap" ref="premium_hue_map"/> + <parameter type="curve" name="LumMap" ref="premium_lum_map"/> + <parameter type="curve" name="SatMap" ref="premium_sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Luster" text="Premium Luster Photo Paper" class="premium" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">13</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">128</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">0.920000</parameter> + <parameter type="curve" name="HueMap" ref="premium_hue_map"/> + <parameter type="curve" name="LumMap" ref="premium_lum_map"/> + <parameter type="curve" name="SatMap" ref="premium_sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.800000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">0.920000</parameter> + <parameter type="curve" name="HueMap" ref="premium_hue_map"/> + <parameter type="curve" name="LumMap" ref="premium_lum_map"/> + <parameter type="curve" name="SatMap" ref="premium_sat_map"/> + </ink> +</paper> + +<paper translate="text" name="ArchivalMatte" text="Archival Matte Paper" class="premium" PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperMedia">15</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">0</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.920000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.920000</parameter> + <parameter type="float" name="SubchannelCutoff">0.400000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">0.600000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + </paper> + +<paper translate="text" name="WaterColorRadiant" text="Watercolor Paper - Radiant White" class="premium" PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperMedia">15</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">0</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.920000</parameter> + <parameter type="float" name="SubchannelCutoff">0.800000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.920000</parameter> + <parameter type="float" name="SubchannelCutoff">0.400000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="GlossyPaper" text="Photo Quality Glossy Paper" class="photo" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">19</parameter> + <parameter type="integer" name="PaperThickness">1</parameter> + <parameter type="integer" name="VacuumIntensity">26</parameter> + <parameter type="integer" name="FeedAdjustment">107</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Ilford" text="Ilford Heavy Paper" class="premium" PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperMedia">15</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">128</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="ColorLife" text="ColorLife Paper" class="premium" PreferredInkset="ultra3photo"> + <parameter type="integer" name="PaperMedia">23</parameter> + <parameter type="integer" name="PaperThickness">2</parameter> + <parameter type="integer" name="VacuumIntensity">0</parameter> + <parameter type="integer" name="FeedAdjustment">103</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.830000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> + +<paper translate="text" name="Other" text="Other" class="plain" +PreferredInkset="ultra3matte"> + <parameter type="integer" name="PaperThickness">1</parameter> + <parameter type="integer" name="VacuumIntensity">26</parameter> + <parameter type="integer" name="FeedAdjustment">107</parameter> + + <ink translate="text" name="ultra3photo" text="UltraChrome Photo Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.500000</parameter> + <parameter type="float" name="BlackTrans">1.000000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> + + <ink translate="text" name="ultra3matte" text="UltraChrome Matte Black"> + <parameter type="float" name="Density">0.720000</parameter> + <parameter type="float" name="SubchannelCutoff">0.100000</parameter> + <parameter type="float" name="BlackTrans">0.400000</parameter> + <parameter type="float" name="GCRLower">0.000000</parameter> + <parameter type="float" name="GCRUpper">0.000000</parameter> + <parameter type="float" name="CyanBalance">0.900000</parameter> + <parameter type="float" name="MagentaBalance">1.000000</parameter> + <parameter type="float" name="YellowBalance">1.000000</parameter> + <parameter type="float" name="BlackDensity">1.000000</parameter> + <parameter type="float" name="Saturation">1.000000</parameter> + <parameter type="float" name="Gamma">1.000000</parameter> + <parameter type="curve" name="HueMap" ref="hue_map"/> + <parameter type="curve" name="LumMap" ref="lum_map"/> + <parameter type="curve" name="SatMap" ref="sat_map"/> + </ink> +</paper> +</escp2Papers> +</gutenprint> diff --git a/src/xml/escp2/mediasizes/Makefile.am b/src/xml/escp2/mediasizes/Makefile.am index 5b7afcb..04fc891 100644 --- a/src/xml/escp2/mediasizes/Makefile.am +++ b/src/xml/escp2/mediasizes/Makefile.am @@ -1,4 +1,3 @@ -## $Id: Makefile.am,v 1.4 2009/05/30 14:10:32 rlk Exp $ ## Copyright (C) 2008 Robert Krawitz ## ## This program is free software; you can redistribute it and/or modify diff --git a/src/xml/escp2/mediasizes/Makefile.in b/src/xml/escp2/mediasizes/Makefile.in index cdf2ee9..78215ca 100644 --- a/src/xml/escp2/mediasizes/Makefile.in +++ b/src/xml/escp2/mediasizes/Makefile.in @@ -84,23 +84,22 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(top_srcdir)/scripts/global.mk $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/scripts/mkinstalldirs + $(srcdir)/Makefile.am subdir = src/xml/escp2/mediasizes ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/isc-posix.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stp.m4 \ - $(top_srcdir)/m4/stp_cups.m4 $(top_srcdir)/m4/stp_gimp.m4 \ - $(top_srcdir)/m4/stp_option.m4 $(top_srcdir)/m4/stp_release.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/stp.m4 $(top_srcdir)/m4/stp_cups.m4 \ + $(top_srcdir)/m4/stp_gimp.m4 $(top_srcdir)/m4/stp_option.m4 \ + $(top_srcdir)/m4/stp_release.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/scripts/mkinstalldirs +mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = @@ -196,9 +195,6 @@ ENABLE_STATIC = @ENABLE_STATIC@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FIND = @FIND@ -FOOMATIC_CONFIGURE = @FOOMATIC_CONFIGURE@ -FOOMATIC_KITLOAD = @FOOMATIC_KITLOAD@ -FOOMATIC_PPDFILE = @FOOMATIC_PPDFILE@ GENPPD_LIBS = @GENPPD_LIBS@ GIMP2_CFLAGS = @GIMP2_CFLAGS@ GIMP2_LIBS = @GIMP2_LIBS@ @@ -231,9 +227,6 @@ GUTENPRINT_MICRO_VERSION = @GUTENPRINT_MICRO_VERSION@ GUTENPRINT_MINOR_VERSION = @GUTENPRINT_MINOR_VERSION@ GUTENPRINT_RELEASE_VERSION = @GUTENPRINT_RELEASE_VERSION@ GUTENPRINT_VERSION = @GUTENPRINT_VERSION@ -IJS_CFLAGS = @IJS_CFLAGS@ -IJS_CONFIG = @IJS_CONFIG@ -IJS_LIBS = @IJS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -254,6 +247,7 @@ LIBREADLINE_DEPS = @LIBREADLINE_DEPS@ LIBS = $(INTLLIBS) @LIBS@ LIBTOOL = @LIBTOOL@ LIBTOOL_DEPS = @LIBTOOL_DEPS@ +LIBUSB_BACKEND_LIBDEPS = @LIBUSB_BACKEND_LIBDEPS@ LIBUSB_CFLAGS = @LIBUSB_CFLAGS@ LIBUSB_LIBS = @LIBUSB_LIBS@ LIPO = @LIPO@ diff --git a/src/xml/escp2/model/Makefile.am b/src/xml/escp2/model/Makefile.am index ea1cc3f..204a00a 100644 --- a/src/xml/escp2/model/Makefile.am +++ b/src/xml/escp2/model/Makefile.am @@ -1,4 +1,3 @@ -## $Id: Makefile.am,v 1.34 2015/10/19 12:26:38 rlk Exp $ ## Copyright (C) 2008 Robert Krawitz ## ## This program is free software; you can redistribute it and/or modify @@ -148,7 +147,13 @@ pkgxmldata_DATA = \ model_119.xml \ model_120.xml \ model_121.xml \ - model_122.xml + model_122.xml \ + model_123.xml \ + model_124.xml \ + model_125.xml \ + model_126.xml \ + model_127.xml \ + model_128.xml xml-stamp: $(pkgxmldata_DATA) Makefile.am -rm -f $@ $@.tmp diff --git a/src/xml/escp2/model/Makefile.in b/src/xml/escp2/model/Makefile.in index 21a41d8..36147cd 100644 --- a/src/xml/escp2/model/Makefile.in +++ b/src/xml/escp2/model/Makefile.in @@ -84,23 +84,22 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(top_srcdir)/scripts/global.mk $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/scripts/mkinstalldirs + $(srcdir)/Makefile.am subdir = src/xml/escp2/model ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/isc-posix.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stp.m4 \ - $(top_srcdir)/m4/stp_cups.m4 $(top_srcdir)/m4/stp_gimp.m4 \ - $(top_srcdir)/m4/stp_option.m4 $(top_srcdir)/m4/stp_release.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/stp.m4 $(top_srcdir)/m4/stp_cups.m4 \ + $(top_srcdir)/m4/stp_gimp.m4 $(top_srcdir)/m4/stp_option.m4 \ + $(top_srcdir)/m4/stp_release.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/scripts/mkinstalldirs +mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = @@ -196,9 +195,6 @@ ENABLE_STATIC = @ENABLE_STATIC@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FIND = @FIND@ -FOOMATIC_CONFIGURE = @FOOMATIC_CONFIGURE@ -FOOMATIC_KITLOAD = @FOOMATIC_KITLOAD@ -FOOMATIC_PPDFILE = @FOOMATIC_PPDFILE@ GENPPD_LIBS = @GENPPD_LIBS@ GIMP2_CFLAGS = @GIMP2_CFLAGS@ GIMP2_LIBS = @GIMP2_LIBS@ @@ -231,9 +227,6 @@ GUTENPRINT_MICRO_VERSION = @GUTENPRINT_MICRO_VERSION@ GUTENPRINT_MINOR_VERSION = @GUTENPRINT_MINOR_VERSION@ GUTENPRINT_RELEASE_VERSION = @GUTENPRINT_RELEASE_VERSION@ GUTENPRINT_VERSION = @GUTENPRINT_VERSION@ -IJS_CFLAGS = @IJS_CFLAGS@ -IJS_CONFIG = @IJS_CONFIG@ -IJS_LIBS = @IJS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -254,6 +247,7 @@ LIBREADLINE_DEPS = @LIBREADLINE_DEPS@ LIBS = $(INTLLIBS) @LIBS@ LIBTOOL = @LIBTOOL@ LIBTOOL_DEPS = @LIBTOOL_DEPS@ +LIBUSB_BACKEND_LIBDEPS = @LIBUSB_BACKEND_LIBDEPS@ LIBUSB_CFLAGS = @LIBUSB_CFLAGS@ LIBUSB_LIBS = @LIBUSB_LIBS@ LIPO = @LIPO@ @@ -499,7 +493,13 @@ pkgxmldata_DATA = \ model_119.xml \ model_120.xml \ model_121.xml \ - model_122.xml + model_122.xml \ + model_123.xml \ + model_124.xml \ + model_125.xml \ + model_126.xml \ + model_127.xml \ + model_128.xml CLEANFILES = xmli18n-tmp.h xml-stamp xml-stamp.tmp EXTRA_DIST = $(pkgxmldata_DATA) diff --git a/src/xml/escp2/model/model_100.xml b/src/xml/escp2/model/model_100.xml index 17219f8..b7a6293 100644 --- a/src/xml/escp2/model/model_100.xml +++ b/src/xml/escp2/model/model_100.xml @@ -173,44 +173,53 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. <resolution translate="text" name="1440x1440ov" text="1440 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> <printedResolution>1440 1440</printedResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.128000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.256000</parameter> + <parameter type="float" name="escp2_density">0.064000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.256000</parameter> + <parameter type="float" name="escp2_density">0.064000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.128000</parameter> + <parameter type="float" name="escp2_density">0.032000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_101.xml b/src/xml/escp2/model/model_101.xml index 93b4903..3b755b0 100644 --- a/src/xml/escp2/model/model_101.xml +++ b/src/xml/escp2/model/model_101.xml @@ -139,44 +139,53 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. <resolution translate="text" name="1440x1440ov" text="1440 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> <printedResolution>1440 1440</printedResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.389000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.380000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512</parameter> + <parameter type="float" name="escp2_density">0.194500</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.380000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.256000</parameter> + <parameter type="float" name="escp2_density">0.097275</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.380000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.256000</parameter> + <parameter type="float" name="escp2_density">0.097275</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.380000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.128000</parameter> + <parameter type="float" name="escp2_density">0.048638</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.380000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_115.xml b/src/xml/escp2/model/model_115.xml index dd231d5..c51862c 100644 --- a/src/xml/escp2/model/model_115.xml +++ b/src/xml/escp2/model/model_115.xml @@ -126,36 +126,42 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.420000</parameter> + <parameter type="float" name="escp2_density">0.184800</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.410000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.180400</parameter> + <parameter type="float" name="DropSize2">0.440000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.513000</parameter> + <parameter type="float" name="escp2_density">0.092545</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.180400</parameter> + <parameter type="float" name="DropSize2">0.440000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.513000</parameter> + <parameter type="float" name="escp2_density">0.092545</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.180400</parameter> + <parameter type="float" name="DropSize2">0.440000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.255000</parameter> + <parameter type="float" name="escp2_density">0.10455</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.410000</parameter> + <parameter type="float" name="DropSize2">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_118.xml b/src/xml/escp2/model/model_118.xml index 2d00f80..1a761a2 100644 --- a/src/xml/escp2/model/model_118.xml +++ b/src/xml/escp2/model/model_118.xml @@ -180,36 +180,42 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.384</parameter> + <parameter type="float" name="escp2_density">0.192</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.384000</parameter> + <parameter type="float" name="escp2_density">0.096</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.384000</parameter> + <parameter type="float" name="escp2_density">0.096</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.192000</parameter> + <parameter type="float" name="escp2_density">0.096</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_119.xml b/src/xml/escp2/model/model_119.xml index d246afd..5078e53 100644 --- a/src/xml/escp2/model/model_119.xml +++ b/src/xml/escp2/model/model_119.xml @@ -180,36 +180,42 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.384</parameter> + <parameter type="float" name="escp2_density">0.192</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.384000</parameter> + <parameter type="float" name="escp2_density">0.096</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.384000</parameter> + <parameter type="float" name="escp2_density">0.096</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.192000</parameter> + <parameter type="float" name="escp2_density">0.096</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_12.xml b/src/xml/escp2/model/model_12.xml index f8a3c74..d1d29da 100644 --- a/src/xml/escp2/model/model_12.xml +++ b/src/xml/escp2/model/model_12.xml @@ -137,22 +137,24 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="1440x720sw" text="1440 x 720 DPI"> <physicalResolution>1440 720</physicalResolution> - <parameter type="float" name="escp2_density">0.568000</parameter> + <parameter type="float" name="escp2_density">0.284000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x720hq2" text="1440 x 720 DPI Highest Quality"> <physicalResolution>1440 720</physicalResolution> <verticalPasses>2</verticalPasses> - <parameter type="float" name="escp2_density">0.568000</parameter> + <parameter type="float" name="escp2_density">0.284000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_120.xml b/src/xml/escp2/model/model_120.xml index 28cc4f7..e91caff 100644 --- a/src/xml/escp2/model/model_120.xml +++ b/src/xml/escp2/model/model_120.xml @@ -180,36 +180,42 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.384</parameter> + <parameter type="float" name="escp2_density">0.192</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.384000</parameter> + <parameter type="float" name="escp2_density">0.096</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.384000</parameter> + <parameter type="float" name="escp2_density">0.096</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.192000</parameter> + <parameter type="float" name="escp2_density">0.096</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_121.xml b/src/xml/escp2/model/model_121.xml index 7b2d4e7..f630c33 100644 --- a/src/xml/escp2/model/model_121.xml +++ b/src/xml/escp2/model/model_121.xml @@ -139,44 +139,53 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. <resolution translate="text" name="1440x1440ov" text="1440 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> <printedResolution>1440 1440</printedResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.389000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.380000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512</parameter> + <parameter type="float" name="escp2_density">0.194500</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.380000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.256000</parameter> + <parameter type="float" name="escp2_density">0.097275</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.380000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.256000</parameter> + <parameter type="float" name="escp2_density">0.097275</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.380000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.128000</parameter> + <parameter type="float" name="escp2_density">0.048638</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.380000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_123.xml b/src/xml/escp2/model/model_123.xml new file mode 100644 index 0000000..6ad1480 --- /dev/null +++ b/src/xml/escp2/model/model_123.xml @@ -0,0 +1,191 @@ +<?xml version="1.0"?> + +<gutenprint xmlns="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0" +xmlns:escp2="http://www.w3.org/2001/XMLSchema-instance" +xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" +xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint.xsd"> +<copyright> + * Copyright 2008 Robert Krawitz (rlk@alum.mit.edu) + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +</copyright> +<escp2Model id="123"> + <media src="escp2/media/wf500.xml"/> + <inputSlots src="escp2/inputslots/default.xml"/> + <qualityPresets src="escp2/qualitypresets/wf40.xml"/> + <inkGroup src="escp2/inks/xp100.xml"/> + <mediaSizes src="escp2/mediasizes/standard.xml"/> + <verticalBorderlessSequence>US\003\000\000\000\002</verticalBorderlessSequence> + <preinitSequence>\000\000\000\033\001@EJL\0401284.4\012@EJL\040\040\040\040\040\012\033@</preinitSequence> + <preinitRemoteSequence>JS\014\000\000GUTENPRINT\000SN\001\000\000</preinitRemoteSequence> + <postinitRemoteSequence>JE\001\000\000</postinitRemoteSequence> + <commandSet>2000</commandSet> + <borderless>Yes</borderless> + <supportsVariableDropsizes/> + <hasFastGraymode/> + <sendZeroAdvance/> + <supportsD4Mode/> + <preferredEnvelopeOrientation>Portrait</preferredEnvelopeOrientation> + <headConfiguration type="default"> + <Nozzles>42</Nozzles> + <MinNozzles>42</MinNozzles> + <FirstNozzle>0</FirstNozzle> + <NozzleSeparation>3</NozzleSeparation> + </headConfiguration> + <headConfiguration type="black"> + <Nozzles>128</Nozzles> + <MinNozzles>128</MinNozzles> + <FirstNozzle>0</FirstNozzle> + <NozzleSeparation>3</NozzleSeparation> + </headConfiguration> + <headConfiguration type="fast"> + <Nozzles>128</Nozzles> + <MinNozzles>128</MinNozzles> + <FirstNozzle>0</FirstNozzle> + <NozzleSeparation>3</NozzleSeparation> + </headConfiguration> + <physicalChannels>4</physicalChannels> + <baseSeparation>360</baseSeparation> + <resolutionScale>14400</resolutionScale> + <minimumResolution>360 120</minimumResolution> + <maximumResolution>5760 2880</maximumResolution> + <extraVerticalFeed>10</extraVerticalFeed> + <separationRows>1</separationRows> + <zeroMarginOffset>80</zeroMarginOffset> + <initialVerticalOffset>-260</initialVerticalOffset> + <microLeftMargin>42</microLeftMargin> + <minHorizontalAlignment>1</minHorizontalAlignment> + <baseHorizontalAlignment>28800</baseHorizontalAlignment> + <bidirectionalAutoUpperLimit>16588800</bidirectionalAutoUpperLimit> + <minimumMediaSize>144 144</minimumMediaSize> + <maximumMediaSize>612 86400</maximumMediaSize> + <maximumImageableArea>612 86400</maximumImageableArea> + <margins interleave="soft" media="sheet">9 9 9 9</margins> + <margins interleave="printer" media="sheet">9 9 9 9</margins> + <margins interleave="soft" media="roll">9 9 0 0</margins> + <margins interleave="printer" media="roll">9 9 0 0</margins> + <extraBottom>24</extraBottom> + <CDOffset>204 191</CDOffset> + <CDMediaSize>595 842</CDMediaSize> + <AlignmentChoices>4 15 0 0</AlignmentChoices> + <ChannelNames> + <ChannelName translate="text" name="Cyan" text="Cyan"/> + <ChannelName translate="text" name="Magenta" text="Magenta"/> + <ChannelName translate="text" name="Yellow" text="Yellow"/> + <ChannelName translate="text" name="Black" text="Black"/> + </ChannelNames> + <resolutions> + <resolution translate="text" name="360x120sw" text="360 x 120 DPI Economy"> + <physicalResolution>360 120</physicalResolution> + <parameter type="float" name="escp2_density">4.000000</parameter> + <parameter type="integer" name="escp2_ink_type">16</parameter> + <parameter type="integer" name="escp2_base_res">360</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.200000</parameter> + <parameter type="float" name="DropSize2">0.350000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="360sw" text="360 DPI"> + <physicalResolution>360 360</physicalResolution> + <parameter type="float" name="escp2_density">2.000000</parameter> + <parameter type="integer" name="escp2_ink_type">16</parameter> + <parameter type="integer" name="escp2_base_res">360</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.200000</parameter> + <parameter type="float" name="DropSize2">0.350000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="720x360sw" text="720 x 360 DPI"> + <physicalResolution>720 360</physicalResolution> + <parameter type="float" name="escp2_density">1.560000</parameter> + <parameter type="integer" name="escp2_ink_type">17</parameter> + <parameter type="integer" name="escp2_base_res">360</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.300000</parameter> + <parameter type="float" name="DropSize2">0.660000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="720sw" text="720 DPI"> + <physicalResolution>720 720</physicalResolution> + <parameter type="float" name="escp2_density">0.780000</parameter> + <parameter type="integer" name="escp2_ink_type">17</parameter> + <parameter type="integer" name="escp2_base_res">360</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.300000</parameter> + <parameter type="float" name="DropSize2">0.550000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="1440x720sw" text="1440 x 720 DPI"> + <physicalResolution>1440 720</physicalResolution> + <parameter type="float" name="escp2_density">0.778000</parameter> + <parameter type="integer" name="escp2_ink_type">18</parameter> + <parameter type="integer" name="escp2_base_res">360</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.380000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="1440x1440ov" text="1440 x 1440 DPI"> + <physicalResolution>2880 1440</physicalResolution> + <printedResolution>1440 1440</printedResolution> + <parameter type="float" name="escp2_density">0.389000</parameter> + <parameter type="integer" name="escp2_ink_type">18</parameter> + <parameter type="integer" name="escp2_base_res">360</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.380000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> + <physicalResolution>2880 1440</physicalResolution> + <parameter type="float" name="escp2_density">0.1945</parameter> + <parameter type="integer" name="escp2_ink_type">18</parameter> + <parameter type="integer" name="escp2_base_res">360</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.380000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> + <physicalResolution>5760 1440</physicalResolution> + <parameter type="float" name="escp2_density">0.097280</parameter> + <parameter type="integer" name="escp2_ink_type">18</parameter> + <parameter type="integer" name="escp2_base_res">360</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.380000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> + <physicalResolution>2880 2880</physicalResolution> + <parameter type="float" name="escp2_density">0.097280</parameter> + <parameter type="integer" name="escp2_ink_type">18</parameter> + <parameter type="integer" name="escp2_base_res">360</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.380000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> + <physicalResolution>5760 2880</physicalResolution> + <parameter type="float" name="escp2_density">0.128000</parameter> + <parameter type="integer" name="escp2_ink_type">18</parameter> + <parameter type="integer" name="escp2_base_res">360</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">1.000000</parameter> + </resolution> + </resolutions> +</escp2Model> +</gutenprint> diff --git a/src/xml/escp2/model/model_124.xml b/src/xml/escp2/model/model_124.xml new file mode 100644 index 0000000..cb0f1e2 --- /dev/null +++ b/src/xml/escp2/model/model_124.xml @@ -0,0 +1,139 @@ +<?xml version="1.0"?> + +<gutenprint xmlns="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0" +xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" +xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint.xsd"> +<copyright> + * Copyright 2008 Robert Krawitz (rlk@alum.mit.edu) + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +</copyright> +<escp2Model id="124"> + <media src="escp2/media/pro_ultrachrome_k3v10a.xml"/> + <inputSlots src="escp2/inputslots/pro_cutter_roll_feed.xml"/> + <qualityPresets src="escp2/qualitypresets/prox900.xml"/> + <inkGroup src="escp2/inks/pro_ultrachrome_k3v10a.xml"/> + <printerWeaves src="escp2/weaves/pro7600.xml"/> + <preinitSequence>\000\000\000\033\001@EJL\0401284.4\012@EJL\040\040\040\040\040\012\033@</preinitSequence> + <postinitRemoteSequence>JE\001\000\000</postinitRemoteSequence> + <commandSet>Pro</commandSet> + <borderless>HorizontalOnly</borderless> + <supportsVariableDropsizes/> + <hasFastGraymode/> + <sendZeroAdvance/> + <supportsD4Mode/> + <preferredEnvelopeOrientation>Landscape</preferredEnvelopeOrientation> + <headConfiguration type="default"> + <Nozzles>1</Nozzles> + <MinNozzles>1</MinNozzles> + <FirstNozzle>0</FirstNozzle> + <NozzleSeparation>1</NozzleSeparation> + </headConfiguration> + <physicalChannels>10</physicalChannels> + <baseSeparation>360</baseSeparation> + <resolutionScale>14400</resolutionScale> + <minimumResolution>360 180</minimumResolution> + <maximumResolution>2880 2880</maximumResolution> + <separationRows>1</separationRows> + <zeroMarginOffset>43</zeroMarginOffset> + <microLeftMargin>5</microLeftMargin> + <minHorizontalAlignment>1</minHorizontalAlignment> + <baseHorizontalAlignment>28800</baseHorizontalAlignment> + <bidirectionalAutoUpperLimit>2073600</bidirectionalAutoUpperLimit> + <minimumMediaSize>144 144</minimumMediaSize> + <maximumMediaSize>1728 86400</maximumMediaSize> + <maximumImageableArea>1728 86400</maximumImageableArea> + <margins interleave="soft" media="sheet">9 9 9 40</margins> + <margins interleave="printer" media="sheet">9 9 9 40</margins> + <margins interleave="soft" media="roll">9 9 0 0</margins> + <margins interleave="printer" media="roll">9 9 0 0</margins> + <AlignmentChoices>3 15 0 0</AlignmentChoices> + <resolutions> + <resolution translate="text" name="360pro" text="360 DPI"> + <physicalResolution>360 360</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">5.000000</parameter> + <parameter type="integer" name="escp2_ink_type">17</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.630000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="720x360mw" text="720 x 360 DPI"> + <physicalResolution>720 360</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">2.520000</parameter> + <parameter type="integer" name="escp2_ink_type">17</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.630000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="720mw" text="720 DPI"> + <physicalResolution>720 720</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">1.260000</parameter> + <parameter type="integer" name="escp2_ink_type">17</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.630000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="720x1440mw" text="1440 x 720 DPI"> + <physicalResolution>720 1440</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.891000</parameter> + <parameter type="integer" name="escp2_ink_type">18</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.275000</parameter> + <parameter type="float" name="DropSize2">0.450000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="1440x1440mw" text="1440 x 1440 DPI"> + <physicalResolution>1440 1440</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.446000</parameter> + <parameter type="integer" name="escp2_ink_type">18</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.275000</parameter> + <parameter type="float" name="DropSize2">0.450000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="2880x1440mw" text="2880 x 1440 DPI"> + <physicalResolution>2880 1440</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.775000</parameter> + <parameter type="integer" name="escp2_ink_type">5</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">1</parameter> + <parameter type="float" name="DropSize1">1.000000</parameter> + </resolution> + <resolution translate="text" name="2880x2880mw" text="2880 x 2880 DPI"> + <physicalResolution>2880 2880</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.388000</parameter> + <parameter type="integer" name="escp2_ink_type">5</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">1</parameter> + <parameter type="float" name="DropSize1">1.000000</parameter> + </resolution> + </resolutions> +</escp2Model> +</gutenprint> diff --git a/src/xml/escp2/model/model_125.xml b/src/xml/escp2/model/model_125.xml new file mode 100644 index 0000000..04ddcee --- /dev/null +++ b/src/xml/escp2/model/model_125.xml @@ -0,0 +1,139 @@ +<?xml version="1.0"?> + +<gutenprint xmlns="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0" +xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" +xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint.xsd"> +<copyright> + * Copyright 2008 Robert Krawitz (rlk@alum.mit.edu) + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +</copyright> +<escp2Model id="125"> + <media src="escp2/media/pro_ultrachrome_k3v10a.xml"/> + <inputSlots src="escp2/inputslots/pro_cutter_roll_feed.xml"/> + <qualityPresets src="escp2/qualitypresets/prox900.xml"/> + <inkGroup src="escp2/inks/pro_ultrachrome_k3v10a.xml"/> + <printerWeaves src="escp2/weaves/pro7600.xml"/> + <preinitSequence>\000\000\000\033\001@EJL\0401284.4\012@EJL\040\040\040\040\040\012\033@</preinitSequence> + <postinitRemoteSequence>JE\001\000\000</postinitRemoteSequence> + <commandSet>Pro</commandSet> + <borderless>HorizontalOnly</borderless> + <supportsVariableDropsizes/> + <hasFastGraymode/> + <sendZeroAdvance/> + <supportsD4Mode/> + <preferredEnvelopeOrientation>Landscape</preferredEnvelopeOrientation> + <headConfiguration type="default"> + <Nozzles>1</Nozzles> + <MinNozzles>1</MinNozzles> + <FirstNozzle>0</FirstNozzle> + <NozzleSeparation>1</NozzleSeparation> + </headConfiguration> + <physicalChannels>10</physicalChannels> + <baseSeparation>360</baseSeparation> + <resolutionScale>14400</resolutionScale> + <minimumResolution>360 180</minimumResolution> + <maximumResolution>2880 2880</maximumResolution> + <separationRows>1</separationRows> + <zeroMarginOffset>43</zeroMarginOffset> + <microLeftMargin>5</microLeftMargin> + <minHorizontalAlignment>1</minHorizontalAlignment> + <baseHorizontalAlignment>28800</baseHorizontalAlignment> + <bidirectionalAutoUpperLimit>2073600</bidirectionalAutoUpperLimit> + <minimumMediaSize>144 144</minimumMediaSize> + <maximumMediaSize>3168 86400</maximumMediaSize> + <maximumImageableArea>3168 86400</maximumImageableArea> + <margins interleave="soft" media="sheet">9 9 9 40</margins> + <margins interleave="printer" media="sheet">9 9 9 40</margins> + <margins interleave="soft" media="roll">9 9 0 0</margins> + <margins interleave="printer" media="roll">9 9 0 0</margins> + <AlignmentChoices>3 15 0 0</AlignmentChoices> + <resolutions> + <resolution translate="text" name="360pro" text="360 DPI"> + <physicalResolution>360 360</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">5.000000</parameter> + <parameter type="integer" name="escp2_ink_type">17</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.630000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="720x360mw" text="720 x 360 DPI"> + <physicalResolution>720 360</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">2.520000</parameter> + <parameter type="integer" name="escp2_ink_type">17</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.630000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="720mw" text="720 DPI"> + <physicalResolution>720 720</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">1.260000</parameter> + <parameter type="integer" name="escp2_ink_type">17</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.630000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="720x1440mw" text="1440 x 720 DPI"> + <physicalResolution>720 1440</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.891000</parameter> + <parameter type="integer" name="escp2_ink_type">18</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.275000</parameter> + <parameter type="float" name="DropSize2">0.450000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="1440x1440mw" text="1440 x 1440 DPI"> + <physicalResolution>1440 1440</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.446000</parameter> + <parameter type="integer" name="escp2_ink_type">18</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.275000</parameter> + <parameter type="float" name="DropSize2">0.450000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="2880x1440mw" text="2880 x 1440 DPI"> + <physicalResolution>2880 1440</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.775000</parameter> + <parameter type="integer" name="escp2_ink_type">5</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">1</parameter> + <parameter type="float" name="DropSize1">1.000000</parameter> + </resolution> + <resolution translate="text" name="2880x2880mw" text="2880 x 2880 DPI"> + <physicalResolution>2880 2880</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.388000</parameter> + <parameter type="integer" name="escp2_ink_type">5</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">1</parameter> + <parameter type="float" name="DropSize1">1.000000</parameter> + </resolution> + </resolutions> +</escp2Model> +</gutenprint> diff --git a/src/xml/escp2/model/model_126.xml b/src/xml/escp2/model/model_126.xml new file mode 100644 index 0000000..33e51b0 --- /dev/null +++ b/src/xml/escp2/model/model_126.xml @@ -0,0 +1,139 @@ +<?xml version="1.0"?> + +<gutenprint xmlns="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0" +xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" +xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint.xsd"> +<copyright> + * Copyright 2008 Robert Krawitz (rlk@alum.mit.edu) + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +</copyright> +<escp2Model id="126"> + <media src="escp2/media/pro_ultrachrome_k3v10b.xml"/> + <inputSlots src="escp2/inputslots/pro_cutter_roll_feed.xml"/> + <qualityPresets src="escp2/qualitypresets/prox900.xml"/> + <inkGroup src="escp2/inks/pro_ultrachrome_k3v10b.xml"/> + <printerWeaves src="escp2/weaves/pro7600.xml"/> + <preinitSequence>\000\000\000\033\001@EJL\0401284.4\012@EJL\040\040\040\040\040\012\033@</preinitSequence> + <postinitRemoteSequence>JE\001\000\000</postinitRemoteSequence> + <commandSet>Pro</commandSet> + <borderless>HorizontalOnly</borderless> + <supportsVariableDropsizes/> + <hasFastGraymode/> + <sendZeroAdvance/> + <supportsD4Mode/> + <preferredEnvelopeOrientation>Landscape</preferredEnvelopeOrientation> + <headConfiguration type="default"> + <Nozzles>1</Nozzles> + <MinNozzles>1</MinNozzles> + <FirstNozzle>0</FirstNozzle> + <NozzleSeparation>1</NozzleSeparation> + </headConfiguration> + <physicalChannels>10</physicalChannels> + <baseSeparation>360</baseSeparation> + <resolutionScale>14400</resolutionScale> + <minimumResolution>360 180</minimumResolution> + <maximumResolution>2880 2880</maximumResolution> + <separationRows>1</separationRows> + <zeroMarginOffset>43</zeroMarginOffset> + <microLeftMargin>5</microLeftMargin> + <minHorizontalAlignment>1</minHorizontalAlignment> + <baseHorizontalAlignment>28800</baseHorizontalAlignment> + <bidirectionalAutoUpperLimit>2073600</bidirectionalAutoUpperLimit> + <minimumMediaSize>144 144</minimumMediaSize> + <maximumMediaSize>1728 86400</maximumMediaSize> + <maximumImageableArea>1728 86400</maximumImageableArea> + <margins interleave="soft" media="sheet">9 9 9 40</margins> + <margins interleave="printer" media="sheet">9 9 9 40</margins> + <margins interleave="soft" media="roll">9 9 0 0</margins> + <margins interleave="printer" media="roll">9 9 0 0</margins> + <AlignmentChoices>3 15 0 0</AlignmentChoices> + <resolutions> + <resolution translate="text" name="360pro" text="360 DPI"> + <physicalResolution>360 360</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">5.000000</parameter> + <parameter type="integer" name="escp2_ink_type">17</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.630000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="720x360mw" text="720 x 360 DPI"> + <physicalResolution>720 360</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">2.520000</parameter> + <parameter type="integer" name="escp2_ink_type">17</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.630000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="720mw" text="720 DPI"> + <physicalResolution>720 720</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">1.260000</parameter> + <parameter type="integer" name="escp2_ink_type">17</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.630000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="720x1440mw" text="1440 x 720 DPI"> + <physicalResolution>720 1440</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.891000</parameter> + <parameter type="integer" name="escp2_ink_type">18</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.275000</parameter> + <parameter type="float" name="DropSize2">0.450000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="1440x1440mw" text="1440 x 1440 DPI"> + <physicalResolution>1440 1440</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.446000</parameter> + <parameter type="integer" name="escp2_ink_type">18</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.275000</parameter> + <parameter type="float" name="DropSize2">0.450000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="2880x1440mw" text="2880 x 1440 DPI"> + <physicalResolution>2880 1440</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.775000</parameter> + <parameter type="integer" name="escp2_ink_type">5</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">1</parameter> + <parameter type="float" name="DropSize1">1.000000</parameter> + </resolution> + <resolution translate="text" name="2880x2880mw" text="2880 x 2880 DPI"> + <physicalResolution>2880 2880</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.388000</parameter> + <parameter type="integer" name="escp2_ink_type">5</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">1</parameter> + <parameter type="float" name="DropSize1">1.000000</parameter> + </resolution> + </resolutions> +</escp2Model> +</gutenprint> diff --git a/src/xml/escp2/model/model_127.xml b/src/xml/escp2/model/model_127.xml new file mode 100644 index 0000000..21fe173 --- /dev/null +++ b/src/xml/escp2/model/model_127.xml @@ -0,0 +1,139 @@ +<?xml version="1.0"?> + +<gutenprint xmlns="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0" +xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" +xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint.xsd"> +<copyright> + * Copyright 2008 Robert Krawitz (rlk@alum.mit.edu) + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +</copyright> +<escp2Model id="127"> + <media src="escp2/media/pro_ultrachrome_k3v10b.xml"/> + <inputSlots src="escp2/inputslots/pro_cutter_roll_feed.xml"/> + <qualityPresets src="escp2/qualitypresets/prox900.xml"/> + <inkGroup src="escp2/inks/pro_ultrachrome_k3v10b.xml"/> + <printerWeaves src="escp2/weaves/pro7600.xml"/> + <preinitSequence>\000\000\000\033\001@EJL\0401284.4\012@EJL\040\040\040\040\040\012\033@</preinitSequence> + <postinitRemoteSequence>JE\001\000\000</postinitRemoteSequence> + <commandSet>Pro</commandSet> + <borderless>HorizontalOnly</borderless> + <supportsVariableDropsizes/> + <hasFastGraymode/> + <sendZeroAdvance/> + <supportsD4Mode/> + <preferredEnvelopeOrientation>Landscape</preferredEnvelopeOrientation> + <headConfiguration type="default"> + <Nozzles>1</Nozzles> + <MinNozzles>1</MinNozzles> + <FirstNozzle>0</FirstNozzle> + <NozzleSeparation>1</NozzleSeparation> + </headConfiguration> + <physicalChannels>10</physicalChannels> + <baseSeparation>360</baseSeparation> + <resolutionScale>14400</resolutionScale> + <minimumResolution>360 180</minimumResolution> + <maximumResolution>2880 2880</maximumResolution> + <separationRows>1</separationRows> + <zeroMarginOffset>43</zeroMarginOffset> + <microLeftMargin>5</microLeftMargin> + <minHorizontalAlignment>1</minHorizontalAlignment> + <baseHorizontalAlignment>28800</baseHorizontalAlignment> + <bidirectionalAutoUpperLimit>2073600</bidirectionalAutoUpperLimit> + <minimumMediaSize>144 144</minimumMediaSize> + <maximumMediaSize>3168 86400</maximumMediaSize> + <maximumImageableArea>3168 86400</maximumImageableArea> + <margins interleave="soft" media="sheet">9 9 9 40</margins> + <margins interleave="printer" media="sheet">9 9 9 40</margins> + <margins interleave="soft" media="roll">9 9 0 0</margins> + <margins interleave="printer" media="roll">9 9 0 0</margins> + <AlignmentChoices>3 15 0 0</AlignmentChoices> + <resolutions> + <resolution translate="text" name="360pro" text="360 DPI"> + <physicalResolution>360 360</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">5.000000</parameter> + <parameter type="integer" name="escp2_ink_type">17</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.630000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="720x360mw" text="720 x 360 DPI"> + <physicalResolution>720 360</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">2.520000</parameter> + <parameter type="integer" name="escp2_ink_type">17</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.630000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="720mw" text="720 DPI"> + <physicalResolution>720 720</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">1.260000</parameter> + <parameter type="integer" name="escp2_ink_type">17</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.630000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="720x1440mw" text="1440 x 720 DPI"> + <physicalResolution>720 1440</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.891000</parameter> + <parameter type="integer" name="escp2_ink_type">18</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.275000</parameter> + <parameter type="float" name="DropSize2">0.450000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="1440x1440mw" text="1440 x 1440 DPI"> + <physicalResolution>1440 1440</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.446000</parameter> + <parameter type="integer" name="escp2_ink_type">18</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.275000</parameter> + <parameter type="float" name="DropSize2">0.450000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="2880x1440mw" text="2880 x 1440 DPI"> + <physicalResolution>2880 1440</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.775000</parameter> + <parameter type="integer" name="escp2_ink_type">5</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">1</parameter> + <parameter type="float" name="DropSize1">1.000000</parameter> + </resolution> + <resolution translate="text" name="2880x2880mw" text="2880 x 2880 DPI"> + <physicalResolution>2880 2880</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.388000</parameter> + <parameter type="integer" name="escp2_ink_type">5</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">1</parameter> + <parameter type="float" name="DropSize1">1.000000</parameter> + </resolution> + </resolutions> +</escp2Model> +</gutenprint> diff --git a/src/xml/escp2/model/model_128.xml b/src/xml/escp2/model/model_128.xml new file mode 100644 index 0000000..5b6649d --- /dev/null +++ b/src/xml/escp2/model/model_128.xml @@ -0,0 +1,150 @@ +<?xml version="1.0"?> + +<gutenprint xmlns="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0" +xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" +xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint.xsd"> +<copyright> + * Copyright 2010 Lutz Sammer (johns98@gmx.net) + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +</copyright> +<escp2Model id="128"> + <media src="escp2/media/pro_ultrachrome_k3v.xml"/> + <inputSlots src="escp2/inputslots/pro_cutter_roll_feed.xml"/> + <qualityPresets src="escp2/qualitypresets/standard.xml"/> + <inkGroup src="escp2/inks/pro_ultrachrome_k3v.xml"/> + <printerWeaves src="escp2/weaves/pro7600.xml"/> + <preinitSequence>\000\000\000\033\001@EJL\0401284.4\012@EJL\040\040\040\040\040\012\033@</preinitSequence> + <postinitRemoteSequence>JE\001\000\000</postinitRemoteSequence> + <commandSet>Pro</commandSet> + <borderless>HorizontalOnly</borderless> + <supportsVariableDropsizes/> + <hasFastGraymode/> + <sendZeroAdvance/> + <supportsD4Mode/> + <preferredEnvelopeOrientation>Landscape</preferredEnvelopeOrientation> + <headConfiguration type="default"> + <Nozzles>1</Nozzles> + <MinNozzles>1</MinNozzles> + <FirstNozzle>0</FirstNozzle> + <NozzleSeparation>1</NozzleSeparation> + </headConfiguration> + <physicalChannels>8</physicalChannels> + <baseSeparation>360</baseSeparation> + <resolutionScale>14400</resolutionScale> + <minimumResolution>360 180</minimumResolution> + <maximumResolution>2880 2880</maximumResolution> + <separationRows>1</separationRows> + <zeroMarginOffset>43</zeroMarginOffset> + <microLeftMargin>5</microLeftMargin> + <minHorizontalAlignment>1</minHorizontalAlignment> + <baseHorizontalAlignment>28800</baseHorizontalAlignment> + <bidirectionalAutoUpperLimit>2073600</bidirectionalAutoUpperLimit> + <minimumMediaSize>144 144</minimumMediaSize> + <maximumMediaSize>936 86400</maximumMediaSize> + <maximumImageableArea>936 86400</maximumImageableArea> + <margins interleave="soft" media="sheet">9 9 9 40</margins> + <margins interleave="printer" media="sheet">9 9 9 40</margins> + <margins interleave="soft" media="roll">9 9 0 0</margins> + <margins interleave="printer" media="roll">9 9 0 0</margins> + <AlignmentChoices>3 15 0 0</AlignmentChoices> + <resolutions> + <resolution translate="text" name="360x180dpi" text="360 x 180 DPI Draft"> + <physicalResolution>360 180</physicalResolution> + <printerWeave command="\033(i\001\000\000"/> + <parameter type="float" name="escp2_density">10.000000</parameter> + <parameter type="integer" name="escp2_ink_type">17</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.630000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="360pro" text="360 DPI"> + <physicalResolution>360 360</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">5.000000</parameter> + <parameter type="integer" name="escp2_ink_type">17</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.630000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="720x360mw" text="720 x 360 DPI"> + <physicalResolution>720 360</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">2.520000</parameter> + <parameter type="integer" name="escp2_ink_type">17</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.630000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="720mw" text="720 DPI"> + <physicalResolution>720 720</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">1.260000</parameter> + <parameter type="integer" name="escp2_ink_type">17</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.630000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="1440x720mw" text="1440 x 720 DPI"> + <physicalResolution>1440 720</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.891000</parameter> + <parameter type="integer" name="escp2_ink_type">16</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.275000</parameter> + <parameter type="float" name="DropSize2">0.450000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="1440x1440mw" text="1440 x 1440 DPI"> + <physicalResolution>1440 1440</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.446000</parameter> + <parameter type="integer" name="escp2_ink_type">16</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.275000</parameter> + <parameter type="float" name="DropSize2">0.450000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> + </resolution> + <resolution translate="text" name="2880x1440mw" text="2880 x 1440 DPI"> + <physicalResolution>2880 1440</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.775000</parameter> + <parameter type="integer" name="escp2_ink_type">5</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">1</parameter> + <parameter type="float" name="DropSize1">1.000000</parameter> + </resolution> + <resolution translate="text" name="2880x2880mw" text="2880 x 2880 DPI"> + <physicalResolution>2880 2880</physicalResolution> + <printerWeave command="\033(i\001\000\001"/> + <parameter type="float" name="escp2_density">0.388000</parameter> + <parameter type="integer" name="escp2_ink_type">5</parameter> + <parameter type="integer" name="escp2_base_res">2880</parameter> + <parameter type="integer" name="escp2_bits">1</parameter> + <parameter type="float" name="DropSize1">1.000000</parameter> + </resolution> + </resolutions> +</escp2Model> +</gutenprint> diff --git a/src/xml/escp2/model/model_13.xml b/src/xml/escp2/model/model_13.xml index 480ae88..efefb0d 100644 --- a/src/xml/escp2/model/model_13.xml +++ b/src/xml/escp2/model/model_13.xml @@ -140,22 +140,24 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="1440x720sw" text="1440 x 720 DPI"> <physicalResolution>1440 720</physicalResolution> - <parameter type="float" name="escp2_density">0.700000</parameter> + <parameter type="float" name="escp2_density">0.427000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">180</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.390000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.237900</parameter> + <parameter type="float" name="DropSize2">0.610000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x720hq2" text="1440 x 720 DPI Highest Quality"> <physicalResolution>1440 720</physicalResolution> <verticalPasses>2</verticalPasses> - <parameter type="float" name="escp2_density">0.700000</parameter> + <parameter type="float" name="escp2_density">0.427000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">180</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.390000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.237900</parameter> + <parameter type="float" name="DropSize2">0.610000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_14.xml b/src/xml/escp2/model/model_14.xml index 24c4cf1..39e7f14 100644 --- a/src/xml/escp2/model/model_14.xml +++ b/src/xml/escp2/model/model_14.xml @@ -129,22 +129,24 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="1440x720sw" text="1440 x 720 DPI"> <physicalResolution>1440 720</physicalResolution> - <parameter type="float" name="escp2_density">0.568000</parameter> + <parameter type="float" name="escp2_density">0.284000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x720hq2" text="1440 x 720 DPI Highest Quality"> <physicalResolution>1440 720</physicalResolution> <verticalPasses>2</verticalPasses> - <parameter type="float" name="escp2_density">0.568000</parameter> + <parameter type="float" name="escp2_density">0.284000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_15.xml b/src/xml/escp2/model/model_15.xml index ce96f8f..6a89096 100644 --- a/src/xml/escp2/model/model_15.xml +++ b/src/xml/escp2/model/model_15.xml @@ -129,22 +129,24 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="1440x720sw" text="1440 x 720 DPI"> <physicalResolution>1440 720</physicalResolution> - <parameter type="float" name="escp2_density">0.568000</parameter> + <parameter type="float" name="escp2_density">0.284000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x720hq2" text="1440 x 720 DPI Highest Quality"> <physicalResolution>1440 720</physicalResolution> <verticalPasses>2</verticalPasses> - <parameter type="float" name="escp2_density">0.568000</parameter> + <parameter type="float" name="escp2_density">0.284000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_20.xml b/src/xml/escp2/model/model_20.xml index 5091967..17101c1 100644 --- a/src/xml/escp2/model/model_20.xml +++ b/src/xml/escp2/model/model_20.xml @@ -139,22 +139,24 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="1440x720sw" text="1440 x 720 DPI"> <physicalResolution>1440 720</physicalResolution> - <parameter type="float" name="escp2_density">0.568000</parameter> + <parameter type="float" name="escp2_density">0.284000</parameter> <parameter type="integer" name="escp2_ink_type">17</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x720hq2" text="1440 x 720 DPI Highest Quality"> <physicalResolution>1440 720</physicalResolution> <verticalPasses>2</verticalPasses> - <parameter type="float" name="escp2_density">0.568000</parameter> + <parameter type="float" name="escp2_density">0.284000</parameter> <parameter type="integer" name="escp2_ink_type">17</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_25.xml b/src/xml/escp2/model/model_25.xml index 73d2585..cf689bc 100644 --- a/src/xml/escp2/model/model_25.xml +++ b/src/xml/escp2/model/model_25.xml @@ -150,22 +150,24 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="1440x720sw" text="1440 x 720 DPI"> <physicalResolution>1440 720</physicalResolution> - <parameter type="float" name="escp2_density">0.568000</parameter> + <parameter type="float" name="escp2_density">0.284000</parameter> <parameter type="integer" name="escp2_ink_type">17</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x720hq2" text="1440 x 720 DPI Highest Quality"> <physicalResolution>1440 720</physicalResolution> <verticalPasses>2</verticalPasses> - <parameter type="float" name="escp2_density">0.568000</parameter> + <parameter type="float" name="escp2_density">0.284000</parameter> <parameter type="integer" name="escp2_ink_type">17</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_32.xml b/src/xml/escp2/model/model_32.xml index c1f3001..d4572c0 100644 --- a/src/xml/escp2/model/model_32.xml +++ b/src/xml/escp2/model/model_32.xml @@ -150,20 +150,24 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x720hq2" text="2880 x 720 DPI Highest Quality"> <physicalResolution>2880 720</physicalResolution> <verticalPasses>2</verticalPasses> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_33.xml b/src/xml/escp2/model/model_33.xml index 1413325..c1af4f5 100644 --- a/src/xml/escp2/model/model_33.xml +++ b/src/xml/escp2/model/model_33.xml @@ -150,20 +150,24 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x720hq2" text="2880 x 720 DPI Highest Quality"> <physicalResolution>2880 720</physicalResolution> <verticalPasses>2</verticalPasses> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_34.xml b/src/xml/escp2/model/model_34.xml index 8776905..5aef30b 100644 --- a/src/xml/escp2/model/model_34.xml +++ b/src/xml/escp2/model/model_34.xml @@ -130,39 +130,45 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="1440x720sw" text="1440 x 720 DPI"> <physicalResolution>1440 720</physicalResolution> - <parameter type="float" name="escp2_density">0.490000</parameter> + <parameter type="float" name="escp2_density">0.298900</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.390000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.237900</parameter> + <parameter type="float" name="DropSize2">0.610000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x720hq2" text="1440 x 720 DPI Highest Quality"> <physicalResolution>1440 720</physicalResolution> <verticalPasses>2</verticalPasses> - <parameter type="float" name="escp2_density">0.490000</parameter> + <parameter type="float" name="escp2_density">0.298900</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.390000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.237900</parameter> + <parameter type="float" name="DropSize2">0.610000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.637000</parameter> + <parameter type="float" name="escp2_density">0.151542</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.237900</parameter> + <parameter type="float" name="DropSize2">0.610000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x720hq2" text="2880 x 720 DPI Highest Quality"> <physicalResolution>2880 720</physicalResolution> <verticalPasses>2</verticalPasses> - <parameter type="float" name="escp2_density">0.637000</parameter> + <parameter type="float" name="escp2_density">0.151542</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.237900</parameter> + <parameter type="float" name="DropSize2">0.610000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_35.xml b/src/xml/escp2/model/model_35.xml index 4d53dc3..767ce06 100644 --- a/src/xml/escp2/model/model_35.xml +++ b/src/xml/escp2/model/model_35.xml @@ -144,20 +144,24 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x720hq2" text="2880 x 720 DPI Highest Quality"> <physicalResolution>2880 720</physicalResolution> <verticalPasses>2</verticalPasses> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_36.xml b/src/xml/escp2/model/model_36.xml index 868f32e..bbf4c6f 100644 --- a/src/xml/escp2/model/model_36.xml +++ b/src/xml/escp2/model/model_36.xml @@ -144,20 +144,24 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x720hq2" text="2880 x 720 DPI Highest Quality"> <physicalResolution>2880 720</physicalResolution> <verticalPasses>2</verticalPasses> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_37.xml b/src/xml/escp2/model/model_37.xml index 6a61c79..067de1e 100644 --- a/src/xml/escp2/model/model_37.xml +++ b/src/xml/escp2/model/model_37.xml @@ -144,20 +144,24 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x720hq2" text="2880 x 720 DPI Highest Quality"> <physicalResolution>2880 720</physicalResolution> <verticalPasses>2</verticalPasses> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_38.xml b/src/xml/escp2/model/model_38.xml index c2753bb..9e79c9c 100644 --- a/src/xml/escp2/model/model_38.xml +++ b/src/xml/escp2/model/model_38.xml @@ -143,22 +143,24 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="1440x720sw" text="1440 x 720 DPI"> <physicalResolution>1440 720</physicalResolution> - <parameter type="float" name="escp2_density">0.710000</parameter> + <parameter type="float" name="escp2_density">0.355000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.650000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.325000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x720hq2" text="1440 x 720 DPI Highest Quality"> <physicalResolution>1440 720</physicalResolution> <verticalPasses>2</verticalPasses> - <parameter type="float" name="escp2_density">0.710000</parameter> + <parameter type="float" name="escp2_density">0.355000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.650000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.325000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_43.xml b/src/xml/escp2/model/model_43.xml index 8a807f4..e495fe4 100644 --- a/src/xml/escp2/model/model_43.xml +++ b/src/xml/escp2/model/model_43.xml @@ -142,22 +142,24 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="1440x720sw" text="1440 x 720 DPI"> <physicalResolution>1440 720</physicalResolution> - <parameter type="float" name="escp2_density">0.710000</parameter> + <parameter type="float" name="escp2_density">0.355000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.650000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.325000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x720hq2" text="1440 x 720 DPI Highest Quality"> <physicalResolution>1440 720</physicalResolution> <verticalPasses>2</verticalPasses> - <parameter type="float" name="escp2_density">0.710000</parameter> + <parameter type="float" name="escp2_density">0.355000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.650000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.325000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_44.xml b/src/xml/escp2/model/model_44.xml index e1a3713..0f8b4a5 100644 --- a/src/xml/escp2/model/model_44.xml +++ b/src/xml/escp2/model/model_44.xml @@ -130,29 +130,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x1440sw" text="1440 x 1440 DPI"> <physicalResolution>1440 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.128000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_46.xml b/src/xml/escp2/model/model_46.xml index f6a9e86..b1ebfec 100644 --- a/src/xml/escp2/model/model_46.xml +++ b/src/xml/escp2/model/model_46.xml @@ -122,12 +122,13 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="1440x720sw" text="1440 x 720 DPI"> <physicalResolution>1440 720</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> diff --git a/src/xml/escp2/model/model_50.xml b/src/xml/escp2/model/model_50.xml index 563bd1e..dace79a 100644 --- a/src/xml/escp2/model/model_50.xml +++ b/src/xml/escp2/model/model_50.xml @@ -133,27 +133,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x1440sw" text="1440 x 1440 DPI"> <physicalResolution>1440 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.320000</parameter> + <parameter type="float" name="escp2_density">0.160000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_51.xml b/src/xml/escp2/model/model_51.xml index 05dc317..5dfa7ba 100644 --- a/src/xml/escp2/model/model_51.xml +++ b/src/xml/escp2/model/model_51.xml @@ -133,27 +133,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x1440sw" text="1440 x 1440 DPI"> <physicalResolution>1440 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.320000</parameter> + <parameter type="float" name="escp2_density">0.160000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_52.xml b/src/xml/escp2/model/model_52.xml index c905bac..2059577 100644 --- a/src/xml/escp2/model/model_52.xml +++ b/src/xml/escp2/model/model_52.xml @@ -139,27 +139,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x1440sw" text="1440 x 1440 DPI"> <physicalResolution>1440 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.320000</parameter> + <parameter type="float" name="escp2_density">0.160000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_53.xml b/src/xml/escp2/model/model_53.xml index 7b03f47..e598329 100644 --- a/src/xml/escp2/model/model_53.xml +++ b/src/xml/escp2/model/model_53.xml @@ -121,12 +121,13 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="1440x720sw" text="1440 x 720 DPI"> <physicalResolution>1440 720</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> diff --git a/src/xml/escp2/model/model_54.xml b/src/xml/escp2/model/model_54.xml index d11f135..68f3427 100644 --- a/src/xml/escp2/model/model_54.xml +++ b/src/xml/escp2/model/model_54.xml @@ -139,22 +139,24 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="1440x720sw" text="1440 x 720 DPI"> <physicalResolution>1440 720</physicalResolution> - <parameter type="float" name="escp2_density">0.568000</parameter> + <parameter type="float" name="escp2_density">0.284000</parameter> <parameter type="integer" name="escp2_ink_type">17</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x720hq2" text="1440 x 720 DPI Highest Quality"> <physicalResolution>1440 720</physicalResolution> <verticalPasses>2</verticalPasses> - <parameter type="float" name="escp2_density">0.568000</parameter> + <parameter type="float" name="escp2_density">0.284000</parameter> <parameter type="integer" name="escp2_ink_type">17</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_55.xml b/src/xml/escp2/model/model_55.xml index 56136b9..6aa8268 100644 --- a/src/xml/escp2/model/model_55.xml +++ b/src/xml/escp2/model/model_55.xml @@ -130,29 +130,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x1440sw" text="1440 x 1440 DPI"> <physicalResolution>1440 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.128000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_60.xml b/src/xml/escp2/model/model_60.xml index eff87a4..45a60c5 100644 --- a/src/xml/escp2/model/model_60.xml +++ b/src/xml/escp2/model/model_60.xml @@ -134,29 +134,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x1440sw" text="1440 x 1440 DPI"> <physicalResolution>1440 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.128000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_61.xml b/src/xml/escp2/model/model_61.xml index 6abec7f..5d7c1c7 100644 --- a/src/xml/escp2/model/model_61.xml +++ b/src/xml/escp2/model/model_61.xml @@ -144,29 +144,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x1440sw" text="1440 x 1440 DPI"> <physicalResolution>1440 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.128000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_62.xml b/src/xml/escp2/model/model_62.xml index 244bb10..553bc19 100644 --- a/src/xml/escp2/model/model_62.xml +++ b/src/xml/escp2/model/model_62.xml @@ -146,20 +146,24 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x720hq2" text="2880 x 720 DPI Highest Quality"> <physicalResolution>2880 720</physicalResolution> <verticalPasses>2</verticalPasses> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_63.xml b/src/xml/escp2/model/model_63.xml index 2eb655b..bf4d705 100644 --- a/src/xml/escp2/model/model_63.xml +++ b/src/xml/escp2/model/model_63.xml @@ -136,20 +136,23 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. <resolution translate="text" name="1440x1440ov" text="1440 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> <printedResolution>1440 1440</printedResolution> - <parameter type="float" name="escp2_density">0.684000</parameter> + <parameter type="float" name="escp2_density">0.328500</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.604000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.480000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.566000</parameter> + <parameter type="float" name="escp2_density">0.164250</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.480000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_64.xml b/src/xml/escp2/model/model_64.xml index 478dedf..225d682 100644 --- a/src/xml/escp2/model/model_64.xml +++ b/src/xml/escp2/model/model_64.xml @@ -145,29 +145,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.500000</parameter> + <parameter type="float" name="escp2_density">0.235000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.530000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.249100</parameter> + <parameter type="float" name="DropSize2">0.470000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.500000</parameter> + <parameter type="float" name="escp2_density">0.235000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.530000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.249100</parameter> + <parameter type="float" name="DropSize2">0.470000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.530000</parameter> + <parameter type="float" name="escp2_density">0.132023</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.249100</parameter> + <parameter type="float" name="DropSize2">0.470000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_65.xml b/src/xml/escp2/model/model_65.xml index 556c1af..5d3b829 100644 --- a/src/xml/escp2/model/model_65.xml +++ b/src/xml/escp2/model/model_65.xml @@ -124,28 +124,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. <resolution translate="text" name="1440x1440ov" text="1440 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> <printedResolution>1440 1440</printedResolution> - <parameter type="float" name="escp2_density">0.684000</parameter> + <parameter type="float" name="escp2_density">0.328320</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.604000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.289920</parameter> + <parameter type="float" name="DropSize2">0.480000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.566000</parameter> + <parameter type="float" name="escp2_density">0.164140</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.289920</parameter> + <parameter type="float" name="DropSize2">0.480000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.283000</parameter> + <parameter type="float" name="escp2_density">0.082047</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.289920</parameter> + <parameter type="float" name="DropSize2">0.480000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_66.xml b/src/xml/escp2/model/model_66.xml index c08bd34..deca79e 100644 --- a/src/xml/escp2/model/model_66.xml +++ b/src/xml/escp2/model/model_66.xml @@ -144,29 +144,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x1440sw" text="1440 x 1440 DPI"> <physicalResolution>1440 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.128000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_67.xml b/src/xml/escp2/model/model_67.xml index ccb638c..afa05a0 100644 --- a/src/xml/escp2/model/model_67.xml +++ b/src/xml/escp2/model/model_67.xml @@ -146,29 +146,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.500000</parameter> + <parameter type="float" name="escp2_density">0.235000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.530000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.249100</parameter> + <parameter type="float" name="DropSize2">0.470000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.500000</parameter> + <parameter type="float" name="escp2_density">0.235000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.530000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.249100</parameter> + <parameter type="float" name="DropSize2">0.470000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.530000</parameter> + <parameter type="float" name="escp2_density">0.132023</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.249100</parameter> + <parameter type="float" name="DropSize2">0.470000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_68.xml b/src/xml/escp2/model/model_68.xml index 3f82b14..3fdd908 100644 --- a/src/xml/escp2/model/model_68.xml +++ b/src/xml/escp2/model/model_68.xml @@ -145,29 +145,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.500000</parameter> + <parameter type="float" name="escp2_density">0.235000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.530000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.249100</parameter> + <parameter type="float" name="DropSize2">0.470000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.500000</parameter> + <parameter type="float" name="escp2_density">0.235000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.530000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.249100</parameter> + <parameter type="float" name="DropSize2">0.470000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.530000</parameter> + <parameter type="float" name="escp2_density">0.132023</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.249100</parameter> + <parameter type="float" name="DropSize2">0.470000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_69.xml b/src/xml/escp2/model/model_69.xml index d893b06..9028eed 100644 --- a/src/xml/escp2/model/model_69.xml +++ b/src/xml/escp2/model/model_69.xml @@ -134,29 +134,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x1440sw" text="1440 x 1440 DPI"> <physicalResolution>1440 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.128000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> @@ -164,6 +168,9 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> <parameter type="float" name="DropSize1">1.000000</parameter> </resolution> </resolutions> diff --git a/src/xml/escp2/model/model_70.xml b/src/xml/escp2/model/model_70.xml index 8dca4f9..5b42818 100644 --- a/src/xml/escp2/model/model_70.xml +++ b/src/xml/escp2/model/model_70.xml @@ -143,29 +143,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.500000</parameter> + <parameter type="float" name="escp2_density">0.235000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.530000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.249100</parameter> + <parameter type="float" name="DropSize2">0.470000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.500000</parameter> + <parameter type="float" name="escp2_density">0.235000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.530000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.249100</parameter> + <parameter type="float" name="DropSize2">0.470000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.530000</parameter> + <parameter type="float" name="escp2_density">0.132023</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.249100</parameter> + <parameter type="float" name="DropSize2">0.470000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_71.xml b/src/xml/escp2/model/model_71.xml index 538b19a..1271d89 100644 --- a/src/xml/escp2/model/model_71.xml +++ b/src/xml/escp2/model/model_71.xml @@ -136,36 +136,42 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.240000</parameter> + <parameter type="float" name="escp2_density">0.105600</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.410000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.180400</parameter> + <parameter type="float" name="DropSize2">0.440000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.293000</parameter> + <parameter type="float" name="escp2_density">0.052857</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.180400</parameter> + <parameter type="float" name="DropSize2">0.440000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.293000</parameter> + <parameter type="float" name="escp2_density">0.052857</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.180400</parameter> + <parameter type="float" name="DropSize2">0.440000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.146000</parameter> + <parameter type="float" name="escp2_density">0.059860</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.410000</parameter> + <parameter type="float" name="DropSize2">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_72.xml b/src/xml/escp2/model/model_72.xml index 18320a5..03f27f3 100644 --- a/src/xml/escp2/model/model_72.xml +++ b/src/xml/escp2/model/model_72.xml @@ -142,29 +142,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x1440sw" text="1440 x 1440 DPI"> <physicalResolution>1440 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.128000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_73.xml b/src/xml/escp2/model/model_73.xml index 521a1a8..07dece7 100644 --- a/src/xml/escp2/model/model_73.xml +++ b/src/xml/escp2/model/model_73.xml @@ -104,20 +104,23 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.422500</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.615000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.399750</parameter> + <parameter type="float" name="DropSize2">0.650000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.530000</parameter> + <parameter type="float" name="escp2_density">0.211870</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.399750</parameter> + <parameter type="float" name="DropSize2">0.650000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_74.xml b/src/xml/escp2/model/model_74.xml index 52ed4ba..3cdd1d7 100644 --- a/src/xml/escp2/model/model_74.xml +++ b/src/xml/escp2/model/model_74.xml @@ -131,20 +131,23 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. <resolution translate="text" name="1440x1440ov" text="1440 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> <printedResolution>1440 1440</printedResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.128000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> @@ -152,7 +155,9 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_75.xml b/src/xml/escp2/model/model_75.xml index ce5e38b..9f61470 100644 --- a/src/xml/escp2/model/model_75.xml +++ b/src/xml/escp2/model/model_75.xml @@ -120,28 +120,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="1440x720sw" text="1440 x 720 DPI"> <physicalResolution>1440 720</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.162500</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.325000</parameter> + <parameter type="float" name="escp2_density">0.081250</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_76.xml b/src/xml/escp2/model/model_76.xml index 6d263a1..fda8c1e 100644 --- a/src/xml/escp2/model/model_76.xml +++ b/src/xml/escp2/model/model_76.xml @@ -122,28 +122,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="1440x720sw" text="1440 x 720 DPI"> <physicalResolution>1440 720</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.162500</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.325000</parameter> + <parameter type="float" name="escp2_density">0.081250</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_77.xml b/src/xml/escp2/model/model_77.xml index e43b6d3..4ea2d02 100644 --- a/src/xml/escp2/model/model_77.xml +++ b/src/xml/escp2/model/model_77.xml @@ -134,28 +134,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. <resolution translate="text" name="1440x1440ov" text="1440 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> <printedResolution>1440 1440</printedResolution> - <parameter type="float" name="escp2_density">0.684000</parameter> + <parameter type="float" name="escp2_density">0.328500</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.604000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.480000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.566000</parameter> + <parameter type="float" name="escp2_density">0.164140</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.480000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.283000</parameter> + <parameter type="float" name="escp2_density">0.082070</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.480000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_78.xml b/src/xml/escp2/model/model_78.xml index f402b11..8007f1b 100644 --- a/src/xml/escp2/model/model_78.xml +++ b/src/xml/escp2/model/model_78.xml @@ -144,20 +144,24 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x720hq2" text="2880 x 720 DPI Highest Quality"> <physicalResolution>2880 720</physicalResolution> <verticalPasses>2</verticalPasses> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.325000</parameter> <parameter type="integer" name="escp2_ink_type">16</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.750000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_79.xml b/src/xml/escp2/model/model_79.xml index 74f15cb..0d007a8 100644 --- a/src/xml/escp2/model/model_79.xml +++ b/src/xml/escp2/model/model_79.xml @@ -134,29 +134,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x1440sw" text="1440 x 1440 DPI"> <physicalResolution>1440 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.128000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_80.xml b/src/xml/escp2/model/model_80.xml index b59b49b..feee980 100644 --- a/src/xml/escp2/model/model_80.xml +++ b/src/xml/escp2/model/model_80.xml @@ -134,29 +134,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x720sw" text="2880 x 720 DPI"> <physicalResolution>2880 720</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="1440x1440sw" text="1440 x 1440 DPI"> <physicalResolution>1440 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.128000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> diff --git a/src/xml/escp2/model/model_81.xml b/src/xml/escp2/model/model_81.xml index 1c7ca95..e696724 100644 --- a/src/xml/escp2/model/model_81.xml +++ b/src/xml/escp2/model/model_81.xml @@ -158,29 +158,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.733000</parameter> + <parameter type="float" name="escp2_density">0.293200</parameter> <parameter type="integer" name="escp2_ink_type">37</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.833000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.333200</parameter> + <parameter type="float" name="DropSize2">0.400000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.733000</parameter> + <parameter type="float" name="escp2_density">0.293200</parameter> <parameter type="integer" name="escp2_ink_type">37</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.833000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.333200</parameter> + <parameter type="float" name="DropSize2">0.400000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.440000</parameter> + <parameter type="float" name="escp2_density">0.146080</parameter> <parameter type="integer" name="escp2_ink_type">37</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.332000</parameter> + <parameter type="float" name="DropSize2">0.400000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_82.xml b/src/xml/escp2/model/model_82.xml index 648a79d..623f111 100644 --- a/src/xml/escp2/model/model_82.xml +++ b/src/xml/escp2/model/model_82.xml @@ -178,29 +178,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.733000</parameter> + <parameter type="float" name="escp2_density">0.293200</parameter> <parameter type="integer" name="escp2_ink_type">37</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.833000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.333200</parameter> + <parameter type="float" name="DropSize2">0.400000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.733000</parameter> + <parameter type="float" name="escp2_density">0.293200</parameter> <parameter type="integer" name="escp2_ink_type">37</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.833000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.333200</parameter> + <parameter type="float" name="DropSize2">0.400000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.440000</parameter> + <parameter type="float" name="escp2_density">0.146600</parameter> <parameter type="integer" name="escp2_ink_type">37</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.333200</parameter> + <parameter type="float" name="DropSize2">0.400000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_83.xml b/src/xml/escp2/model/model_83.xml index bd51f8b..e31d5b3 100644 --- a/src/xml/escp2/model/model_83.xml +++ b/src/xml/escp2/model/model_83.xml @@ -134,28 +134,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. <resolution translate="text" name="1440x1440ov" text="1440 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> <printedResolution>1440 1440</printedResolution> - <parameter type="float" name="escp2_density">0.684000</parameter> + <parameter type="float" name="escp2_density">0.328500</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.604000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.480000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.566000</parameter> + <parameter type="float" name="escp2_density">0.16414</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.480000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.283000</parameter> + <parameter type="float" name="escp2_density">0.08207</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.480000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_84.xml b/src/xml/escp2/model/model_84.xml index f6e299c..091c4b8 100644 --- a/src/xml/escp2/model/model_84.xml +++ b/src/xml/escp2/model/model_84.xml @@ -136,20 +136,23 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. <resolution translate="text" name="1440x1440ov" text="1440 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> <printedResolution>1440 1440</printedResolution> - <parameter type="float" name="escp2_density">0.684000</parameter> + <parameter type="float" name="escp2_density">0.328500</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.604000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.480000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.566000</parameter> + <parameter type="float" name="escp2_density">0.164140</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.290000</parameter> + <parameter type="float" name="DropSize2">0.480000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_85.xml b/src/xml/escp2/model/model_85.xml index ccb8729..fef156f 100644 --- a/src/xml/escp2/model/model_85.xml +++ b/src/xml/escp2/model/model_85.xml @@ -171,36 +171,41 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. <resolution translate="text" name="1440x1440ov" text="1440 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> <printedResolution>1440 1440</printedResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.128000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.256000</parameter> + <parameter type="float" name="escp2_density">0.128000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.256000</parameter> + <parameter type="float" name="escp2_density">0.128000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> diff --git a/src/xml/escp2/model/model_86.xml b/src/xml/escp2/model/model_86.xml index 8728afe..8e532e5 100644 --- a/src/xml/escp2/model/model_86.xml +++ b/src/xml/escp2/model/model_86.xml @@ -102,20 +102,23 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.650000</parameter> + <parameter type="float" name="escp2_density">0.422500</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.615000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.399750</parameter> + <parameter type="float" name="DropSize2">0.650000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.530000</parameter> + <parameter type="float" name="escp2_density">0.211870</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.399750</parameter> + <parameter type="float" name="DropSize2">0.650000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_87.xml b/src/xml/escp2/model/model_87.xml index 9b525be..0c54d1b 100644 --- a/src/xml/escp2/model/model_87.xml +++ b/src/xml/escp2/model/model_87.xml @@ -157,28 +157,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.460000</parameter> + <parameter type="float" name="escp2_density">0.312800</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.810000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.550800</parameter> + <parameter type="float" name="DropSize2">0.680000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.284000</parameter> + <parameter type="float" name="escp2_density">0.156250</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.550000</parameter> + <parameter type="float" name="DropSize2">0.680000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.284000</parameter> + <parameter type="float" name="escp2_density">0.156250</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.550000</parameter> + <parameter type="float" name="DropSize2">0.680000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> diff --git a/src/xml/escp2/model/model_91.xml b/src/xml/escp2/model/model_91.xml index bfcd899..cad8964 100644 --- a/src/xml/escp2/model/model_91.xml +++ b/src/xml/escp2/model/model_91.xml @@ -170,12 +170,13 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.250000</parameter> + <parameter type="float" name="escp2_density">0.117500</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.530000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.249100</parameter> + <parameter type="float" name="DropSize2">0.470000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_92.xml b/src/xml/escp2/model/model_92.xml index 516ef1f..d8de1ef 100644 --- a/src/xml/escp2/model/model_92.xml +++ b/src/xml/escp2/model/model_92.xml @@ -180,28 +180,31 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.384</parameter> + <parameter type="float" name="escp2_density">0.192</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.384000</parameter> + <parameter type="float" name="escp2_density">0.192000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.384000</parameter> + <parameter type="float" name="escp2_density">0.192000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> diff --git a/src/xml/escp2/model/model_93.xml b/src/xml/escp2/model/model_93.xml index 34c6006..42a62d9 100644 --- a/src/xml/escp2/model/model_93.xml +++ b/src/xml/escp2/model/model_93.xml @@ -160,36 +160,41 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. <resolution translate="text" name="1440x1440ov" text="1440 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> <printedResolution>1440 1440</printedResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512</parameter> + <parameter type="float" name="escp2_density">0.128</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.256000</parameter> + <parameter type="float" name="escp2_density">0.128000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.256000</parameter> + <parameter type="float" name="escp2_density">0.128000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> diff --git a/src/xml/escp2/model/model_94.xml b/src/xml/escp2/model/model_94.xml index f2a855e..92b0fc7 100644 --- a/src/xml/escp2/model/model_94.xml +++ b/src/xml/escp2/model/model_94.xml @@ -140,36 +140,43 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. <resolution translate="text" name="1440x1440ov" text="1440 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> <printedResolution>1440 1440</printedResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.389000</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.380000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512</parameter> + <parameter type="float" name="escp2_density">0.1945</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.380000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.256000</parameter> + <parameter type="float" name="escp2_density">0.097280</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.380000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.256000</parameter> + <parameter type="float" name="escp2_density">0.097280</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.380000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> diff --git a/src/xml/escp2/model/model_95.xml b/src/xml/escp2/model/model_95.xml index 2bbf4b5..352386d 100644 --- a/src/xml/escp2/model/model_95.xml +++ b/src/xml/escp2/model/model_95.xml @@ -132,28 +132,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. <resolution translate="text" name="1440x1440ov" text="1440 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> <printedResolution>1440 1440</printedResolution> - <parameter type="float" name="escp2_density">0.684000</parameter> + <parameter type="float" name="escp2_density">0.328320</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.604000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.289920</parameter> + <parameter type="float" name="DropSize2">0.480000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.566000</parameter> + <parameter type="float" name="escp2_density">0.164140</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.289920</parameter> + <parameter type="float" name="DropSize2">0.480000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.283000</parameter> + <parameter type="float" name="escp2_density">0.082047</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.289920</parameter> + <parameter type="float" name="DropSize2">0.480000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_96.xml b/src/xml/escp2/model/model_96.xml index 14b6b6d..9071aab 100644 --- a/src/xml/escp2/model/model_96.xml +++ b/src/xml/escp2/model/model_96.xml @@ -149,29 +149,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.733000</parameter> + <parameter type="float" name="escp2_density">0.439800</parameter> <parameter type="integer" name="escp2_ink_type">37</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.833000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.600000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.733000</parameter> + <parameter type="float" name="escp2_density">0.439800</parameter> <parameter type="integer" name="escp2_ink_type">37</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.833000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.600000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.440000</parameter> + <parameter type="float" name="escp2_density">0.219900</parameter> <parameter type="integer" name="escp2_ink_type">37</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.600000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_97.xml b/src/xml/escp2/model/model_97.xml index 76c428b..7d103c4 100644 --- a/src/xml/escp2/model/model_97.xml +++ b/src/xml/escp2/model/model_97.xml @@ -159,29 +159,33 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.733000</parameter> + <parameter type="float" name="escp2_density">0.439800</parameter> <parameter type="integer" name="escp2_ink_type">37</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.833000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.600000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.733000</parameter> + <parameter type="float" name="escp2_density">0.439800</parameter> <parameter type="integer" name="escp2_ink_type">37</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.833000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.600000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.440000</parameter> + <parameter type="float" name="escp2_density">0.219900</parameter> <parameter type="integer" name="escp2_ink_type">37</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">0.600000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_98.xml b/src/xml/escp2/model/model_98.xml index 6e117cc..d8411b6 100644 --- a/src/xml/escp2/model/model_98.xml +++ b/src/xml/escp2/model/model_98.xml @@ -136,36 +136,42 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.420000</parameter> + <parameter type="float" name="escp2_density">0.1848</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.410000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.180400</parameter> + <parameter type="float" name="DropSize2">0.440000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.513000</parameter> + <parameter type="float" name="escp2_density">0.092545</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.180400</parameter> + <parameter type="float" name="DropSize2">0.440000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.513000</parameter> + <parameter type="float" name="escp2_density">0.092545</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.180400</parameter> + <parameter type="float" name="DropSize2">0.440000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.255000</parameter> + <parameter type="float" name="escp2_density">0.104550</parameter> <parameter type="integer" name="escp2_ink_type">18</parameter> <parameter type="integer" name="escp2_base_res">720</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.410000</parameter> + <parameter type="float" name="DropSize2">1.000000</parameter> </resolution> </resolutions> </escp2Model> diff --git a/src/xml/escp2/model/model_99.xml b/src/xml/escp2/model/model_99.xml index a56c405..fc3e01b 100644 --- a/src/xml/escp2/model/model_99.xml +++ b/src/xml/escp2/model/model_99.xml @@ -171,36 +171,41 @@ xsi:schemaLocation="http://gimp-print.sourceforge.net/xsd/gp.xsd-1.0 gutenprint. <resolution translate="text" name="1440x1440ov" text="1440 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> <printedResolution>1440 1440</printedResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.256000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">0.500000</parameter> - <parameter type="float" name="DropSize2">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="2880x1440sw" text="2880 x 1440 DPI"> <physicalResolution>2880 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.512000</parameter> + <parameter type="float" name="escp2_density">0.128000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.250000</parameter> + <parameter type="float" name="DropSize2">0.500000</parameter> + <parameter type="float" name="DropSize3">1.000000</parameter> </resolution> <resolution translate="text" name="5760x1440sw" text="5760 x 1440 DPI"> <physicalResolution>5760 1440</physicalResolution> - <parameter type="float" name="escp2_density">0.256000</parameter> + <parameter type="float" name="escp2_density">0.128000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">1.000000</parameter> </resolution> <resolution translate="text" name="2880x2880sw" text="2880 x 2880 DPI"> <physicalResolution>2880 2880</physicalResolution> - <parameter type="float" name="escp2_density">0.256000</parameter> + <parameter type="float" name="escp2_density">0.128000</parameter> <parameter type="integer" name="escp2_ink_type">19</parameter> <parameter type="integer" name="escp2_base_res">360</parameter> <parameter type="integer" name="escp2_bits">2</parameter> - <parameter type="float" name="DropSize1">1.000000</parameter> + <parameter type="float" name="DropSize1">0.500000</parameter> + <parameter type="float" name="DropSize2">1.000000</parameter> </resolution> <resolution translate="text" name="5760x2880sw" text="5760 x 2880 DPI"> <physicalResolution>5760 2880</physicalResolution> diff --git a/src/xml/escp2/qualitypresets/Makefile.am b/src/xml/escp2/qualitypresets/Makefile.am index 8da6950..cf7e9e7 100644 --- a/src/xml/escp2/qualitypresets/Makefile.am +++ b/src/xml/escp2/qualitypresets/Makefile.am @@ -1,4 +1,3 @@ -## $Id: Makefile.am,v 1.5 2011/12/14 03:02:58 rlk Exp $ ## Copyright (C) 2008 Robert Krawitz ## ## This program is free software; you can redistribute it and/or modify diff --git a/src/xml/escp2/qualitypresets/Makefile.in b/src/xml/escp2/qualitypresets/Makefile.in index 8bf1efa..4b88e4d 100644 --- a/src/xml/escp2/qualitypresets/Makefile.in +++ b/src/xml/escp2/qualitypresets/Makefile.in @@ -84,23 +84,22 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(top_srcdir)/scripts/global.mk $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/scripts/mkinstalldirs + $(srcdir)/Makefile.am subdir = src/xml/escp2/qualitypresets ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/isc-posix.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stp.m4 \ - $(top_srcdir)/m4/stp_cups.m4 $(top_srcdir)/m4/stp_gimp.m4 \ - $(top_srcdir)/m4/stp_option.m4 $(top_srcdir)/m4/stp_release.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/stp.m4 $(top_srcdir)/m4/stp_cups.m4 \ + $(top_srcdir)/m4/stp_gimp.m4 $(top_srcdir)/m4/stp_option.m4 \ + $(top_srcdir)/m4/stp_release.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/scripts/mkinstalldirs +mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = @@ -196,9 +195,6 @@ ENABLE_STATIC = @ENABLE_STATIC@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FIND = @FIND@ -FOOMATIC_CONFIGURE = @FOOMATIC_CONFIGURE@ -FOOMATIC_KITLOAD = @FOOMATIC_KITLOAD@ -FOOMATIC_PPDFILE = @FOOMATIC_PPDFILE@ GENPPD_LIBS = @GENPPD_LIBS@ GIMP2_CFLAGS = @GIMP2_CFLAGS@ GIMP2_LIBS = @GIMP2_LIBS@ @@ -231,9 +227,6 @@ GUTENPRINT_MICRO_VERSION = @GUTENPRINT_MICRO_VERSION@ GUTENPRINT_MINOR_VERSION = @GUTENPRINT_MINOR_VERSION@ GUTENPRINT_RELEASE_VERSION = @GUTENPRINT_RELEASE_VERSION@ GUTENPRINT_VERSION = @GUTENPRINT_VERSION@ -IJS_CFLAGS = @IJS_CFLAGS@ -IJS_CONFIG = @IJS_CONFIG@ -IJS_LIBS = @IJS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -254,6 +247,7 @@ LIBREADLINE_DEPS = @LIBREADLINE_DEPS@ LIBS = $(INTLLIBS) @LIBS@ LIBTOOL = @LIBTOOL@ LIBTOOL_DEPS = @LIBTOOL_DEPS@ +LIBUSB_BACKEND_LIBDEPS = @LIBUSB_BACKEND_LIBDEPS@ LIBUSB_CFLAGS = @LIBUSB_CFLAGS@ LIBUSB_LIBS = @LIBUSB_LIBS@ LIPO = @LIPO@ diff --git a/src/xml/escp2/weaves/Makefile.am b/src/xml/escp2/weaves/Makefile.am index 4de7cd3..47c1215 100644 --- a/src/xml/escp2/weaves/Makefile.am +++ b/src/xml/escp2/weaves/Makefile.am @@ -1,4 +1,3 @@ -## $Id: Makefile.am,v 1.3 2009/05/30 14:10:32 rlk Exp $ ## Copyright (C) 2008 Robert Krawitz ## ## This program is free software; you can redistribute it and/or modify diff --git a/src/xml/escp2/weaves/Makefile.in b/src/xml/escp2/weaves/Makefile.in index fdf41d0..d541297 100644 --- a/src/xml/escp2/weaves/Makefile.in +++ b/src/xml/escp2/weaves/Makefile.in @@ -84,23 +84,22 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(top_srcdir)/scripts/global.mk $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/scripts/mkinstalldirs + $(srcdir)/Makefile.am subdir = src/xml/escp2/weaves ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/isc-posix.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/stp.m4 \ - $(top_srcdir)/m4/stp_cups.m4 $(top_srcdir)/m4/stp_gimp.m4 \ - $(top_srcdir)/m4/stp_option.m4 $(top_srcdir)/m4/stp_release.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/stp.m4 $(top_srcdir)/m4/stp_cups.m4 \ + $(top_srcdir)/m4/stp_gimp.m4 $(top_srcdir)/m4/stp_option.m4 \ + $(top_srcdir)/m4/stp_release.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/scripts/mkinstalldirs +mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = @@ -196,9 +195,6 @@ ENABLE_STATIC = @ENABLE_STATIC@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FIND = @FIND@ -FOOMATIC_CONFIGURE = @FOOMATIC_CONFIGURE@ -FOOMATIC_KITLOAD = @FOOMATIC_KITLOAD@ -FOOMATIC_PPDFILE = @FOOMATIC_PPDFILE@ GENPPD_LIBS = @GENPPD_LIBS@ GIMP2_CFLAGS = @GIMP2_CFLAGS@ GIMP2_LIBS = @GIMP2_LIBS@ @@ -231,9 +227,6 @@ GUTENPRINT_MICRO_VERSION = @GUTENPRINT_MICRO_VERSION@ GUTENPRINT_MINOR_VERSION = @GUTENPRINT_MINOR_VERSION@ GUTENPRINT_RELEASE_VERSION = @GUTENPRINT_RELEASE_VERSION@ GUTENPRINT_VERSION = @GUTENPRINT_VERSION@ -IJS_CFLAGS = @IJS_CFLAGS@ -IJS_CONFIG = @IJS_CONFIG@ -IJS_LIBS = @IJS_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -254,6 +247,7 @@ LIBREADLINE_DEPS = @LIBREADLINE_DEPS@ LIBS = $(INTLLIBS) @LIBS@ LIBTOOL = @LIBTOOL@ LIBTOOL_DEPS = @LIBTOOL_DEPS@ +LIBUSB_BACKEND_LIBDEPS = @LIBUSB_BACKEND_LIBDEPS@ LIBUSB_CFLAGS = @LIBUSB_CFLAGS@ LIBUSB_LIBS = @LIBUSB_LIBS@ LIPO = @LIPO@ diff --git a/src/xml/extract-strings.c b/src/xml/extract-strings.c index 0f1b286..f2b0860 100644 --- a/src/xml/extract-strings.c +++ b/src/xml/extract-strings.c @@ -1,5 +1,4 @@ /* - * "$Id: extract-strings.c,v 1.3 2013/12/14 19:30:45 rlk Exp $" * * Extract translation strings * diff --git a/src/xml/papers.xml b/src/xml/papers.xml index e6a637f..feda100 100644 --- a/src/xml/papers.xml +++ b/src/xml/papers.xml @@ -1,7 +1,6 @@ <?xml version="1.0"?> <!-- - "$Id: papers.xml,v 1.30 2015/10/04 15:20:31 rlk Exp $" XML description of papers known to libgutenprint. You can add additional paper sizes here. diff --git a/src/xml/printers.xml b/src/xml/printers.xml index 27f5c2f..3fbdac3 100644 --- a/src/xml/printers.xml +++ b/src/xml/printers.xml @@ -1,7 +1,6 @@ <?xml version="1.0"?> <!-- - "$Id: printers.xml,v 1.431 2016/01/14 00:49:59 speachy Exp $" XML description of printers known to libgutenprint You can add additional printers here, but the underlying driver has @@ -93,1193 +92,1212 @@ <parameter type="float" name="MagentaGamma">1.3</parameter> <parameter type="float" name="CyanGamma">1.3</parameter> </parameters> - <printer translate="name" name="Canon BJ-30" driver="bjc-30" manufacturer="Canon" model="30" parameters="gamma_2_density_800_params" foomaticid="Canon-BJ-30" /> - <printer translate="name" name="Canon BJC-50" deviceid="MFG:Canon;MDL:BJC-50;" driver="bjc-50" manufacturer="Canon" model="4400" parameters="gamma_5_density_800_params" foomaticid="Canon-BJC-50" /> - <printer translate="name" name="Canon BJC-55" deviceid="MFG:Canon;MDL:BJC-55;" driver="bjc-55" manufacturer="Canon" model="4400" parameters="gamma_5_density_800_params" foomaticid="Canon-BJC-55" /> - <printer translate="name" name="Canon BJC-80" deviceid="MFG:Canon;MDL:BJC-80;" driver="bjc-80" manufacturer="Canon" model="4400" parameters="gamma_5_density_800_params" foomaticid="Canon-BJC-80" /> - <printer translate="name" name="Canon BJC-85" deviceid="MFG:Canon;MDL:BJC-85;" driver="bjc-85" manufacturer="Canon" model="85" parameters="gamma_5_density_800_params" foomaticid="Canon-BJC-85" /> - <printer translate="name" name="Canon BJC-210" deviceid="MFG:Canon;MDL:BJC-210;DES:Canon BJC-210;CMD:BJ,LQ,BJL,BJRaster;" driver="bjc-210" manufacturer="Canon" model="210" parameters="density_800_params" foomaticid="Canon-BJC-210" /> - <printer translate="name" name="Canon BJC-240" driver="bjc-240" manufacturer="Canon" model="240" parameters="density_800_params" foomaticid="Canon-BJC-240" /> - <printer translate="name" name="Canon BJC-250" deviceid="MFG:Canon;MDL:BJC-250;DES:Canon BJC-250;CMD:BJ,LQ,BJL,BJRaster,BSCC;" driver="bjc-250" manufacturer="Canon" model="250" parameters="density_800_params" foomaticid="Canon-BJC-250" /> - <printer translate="name" name="Canon BJC-1000" deviceid="MFG:Canon;MDL:BJC-1000;DES:Canon BJC-1000;CMD:BJL,BJRaster,BSCC,TXT01;" driver="bjc-1000" manufacturer="Canon" model="1000" parameters="density_800_params" foomaticid="Canon-BJC-1000" /> - <printer translate="name" name="Canon BJC-2000" driver="bjc-2000" manufacturer="Canon" model="2000" parameters="density_800_params" foomaticid="Canon-BJC-2000" /> - <printer translate="name" name="Canon BJC-2010" driver="bjc-2010" manufacturer="Canon" model="2000" parameters="density_800_params" foomaticid="Canon-BJC-2010" /> - <printer translate="name" name="Canon BJC-2100" deviceid="MFG:Canon;MDL:BJC-2100;DES:Canon BJC-2100;" driver="bjc-2100" manufacturer="Canon" model="4300" parameters="gamma_750_params" foomaticid="Canon-BJC-2100" /> - <printer translate="name" name="Canon BJC-2110" driver="bjc-2110" manufacturer="Canon" model="2000" parameters="density_800_params" foomaticid="Canon-BJC-2110" /> - <printer translate="name" name="Canon BJC-3000" deviceid="MFG:Canon;MDL:BJC-3000;DES:Canon BJC-3000;CMD:BJL,BJRaster3,BSCC,TXT01,BJScan2;" driver="bjc-3000" manufacturer="Canon" model="3000" parameters="density_800_params" foomaticid="Canon-BJC-3000" /> - <printer translate="name" name="Canon BJC-4000" driver="bjc-4000" manufacturer="Canon" model="4300" parameters="gamma_750_params" foomaticid="Canon-BJC-4000" /> - <printer translate="name" name="Canon BJC-4300" deviceid="MFG:Canon;MDL:BJC-4300;DES:Canon BJC-4300;CMD:BJ,LQ,BJL,BJRaster,BSCC;" driver="bjc-4300" manufacturer="Canon" model="4300" parameters="gamma_750_params" foomaticid="Canon-BJC-4300" /> - <printer translate="name" name="Canon BJC-4400" deviceid="MFG:Canon;MDL:BJC-4400;DES:Canon BJC-4400;CMD:BJ,LQ,BJL,BJRaster,BSCC;" driver="bjc-4400" manufacturer="Canon" model="4400" parameters="density_800_params" foomaticid="Canon-BJC-4400" /> - <printer translate="name" name="Canon BJC-4550" driver="bjc-4550" manufacturer="Canon" model="4550" parameters="density_800_params" foomaticid="Canon-BJC-4550" /> - <printer translate="name" name="Canon BJC-5100" driver="bjc-5100" manufacturer="Canon" model="5100" parameters="density_800_params" foomaticid="Canon-BJC-5100" /> - <printer translate="name" name="Canon BJC-5500" driver="bjc-5500" manufacturer="Canon" model="5500" parameters="density_800_params" foomaticid="Canon-BJC-5500" /> - <printer translate="name" name="Canon BJC-5500J" driver="bjc-5500j" manufacturer="Canon" model="5500" parameters="density_800_params" foomaticid="Canon-BJC-5500J" /> - <printer translate="name" name="Canon BJC-6000" deviceid="MFG:Canon;MDL:BJC-6000;DES:Canon BJC-6000;CMD:BJL,BJRaster3,BSCC,TXT;" driver="bjc-6000" manufacturer="Canon" model="6000" parameters="gamma_750_params" foomaticid="Canon-BJC-6000" /> - <printer translate="name" name="Canon BJC-6100" driver="bjc-6100" manufacturer="Canon" model="6100" parameters="density_800_params" foomaticid="Canon-BJC-6100" /> - <printer translate="name" name="Canon BJC-6200" deviceid="MFG:Canon;MDL:BJC-6200;DES:Canon BJC-6200;CMD:BJL,BJRaster3,BSCC,TXT01,BJScan2;" driver="bjc-6200" manufacturer="Canon" model="6200" parameters="gamma_750_params" foomaticid="Canon-BJC-6200" /> - <printer translate="name" name="Canon BJC-6500" driver="bjc-6500" manufacturer="Canon" model="6500" parameters="gamma_750_params" foomaticid="Canon-BJC-6500" /> - <printer translate="name" name="Canon BJC-7000" driver="bjc-7000" manufacturer="Canon" model="7000" parameters="gamma_6_density_800_params" foomaticid="Canon-BJC-7000" /> - <printer translate="name" name="Canon BJC-7100" driver="bjc-7100" manufacturer="Canon" model="7100" parameters="density_800_params" foomaticid="Canon-BJC-7100" /> - <printer translate="name" name="Canon BJC-8200" deviceid="MFG:Canon;MDL:BJC-8200;DES:Canon;CMD:BJL,BJRaster3,BSCC,TXT01;" driver="bjc-8200" manufacturer="Canon" model="8200" parameters="density_800_params" foomaticid="Canon-BJC-8200" /> - <printer translate="name" name="Canon BJC-8500" driver="bjc-8500" manufacturer="Canon" model="8500" parameters="density_800_params" foomaticid="Canon-BJC-8500" /> - <printer translate="name" name="Canon S100" deviceid="MFG:Canon;MDL:S100SP;DES:Canon S100SP;CMD:BJL,BJRaster,BSCC,TXT01;" driver="bjc-s100" manufacturer="Canon" model="4300" parameters="gamma_750_params" foomaticid="Canon-S100" /> - <printer translate="name" name="Canon S200" driver="bjc-s200" manufacturer="Canon" model="1000200" parameters="gamma_8_density_900_params" foomaticid="Canon-S200" /> - <printer translate="name" name="Canon S300" driver="bjc-s300" manufacturer="Canon" model="1000300" parameters="density_800_params" foomaticid="Canon-S300" /> - <printer translate="name" name="Canon S330" driver="bjc-s330" manufacturer="Canon" model="1000330" parameters="density_800_params" foomaticid="Canon-S330" /> - <printer translate="name" name="Canon S400" driver="bjc-s400" manufacturer="Canon" model="3000" parameters="density_800_params" foomaticid="Canon-S400" /> - <printer translate="name" name="Canon S450" driver="bjc-s450" manufacturer="Canon" model="6200" parameters="gamma_750_params" foomaticid="Canon-S450" /> - <printer translate="name" name="Canon S500" driver="bjc-s500" manufacturer="Canon" model="1000500" parameters="density_800_params" foomaticid="Canon-S500" /> - <printer translate="name" name="Canon S520" driver="bjc-s520" manufacturer="Canon" model="1000520" parameters="density_800_params" foomaticid="Canon-S520" /> - <printer translate="name" name="Canon S530D" driver="bjc-s530D" manufacturer="Canon" model="1000520" parameters="density_800_params" foomaticid="Canon-S530D" /> - <printer translate="name" name="Canon S600" deviceid="MFG:Canon;MDL:S600;DES:Canon S600;CMD:BJL,BJRaster3,BSCC,TXT01;" driver="bjc-s600" manufacturer="Canon" model="1000600" parameters="density_800_params" foomaticid="Canon-S600" /> - <printer translate="name" name="Canon S630" driver="bjc-s630" manufacturer="Canon" model="1000600" parameters="density_800_params" foomaticid="Canon-S630" /> - <printer translate="name" name="Canon S750" driver="bjc-s750" manufacturer="Canon" model="1000750" parameters="density_800_params" foomaticid="Canon-S750" /> - <printer translate="name" name="Canon S800" driver="bjc-s800" manufacturer="Canon" model="1000800" parameters="density_800_params" foomaticid="Canon-S800" /> - <printer translate="name" name="Canon S820" driver="bjc-s820" manufacturer="Canon" model="1000820" parameters="density_800_params" foomaticid="Canon-S820" /> - <printer translate="name" name="Canon S830D" driver="bjc-s830" manufacturer="Canon" model="1000830" parameters="density_800_params" foomaticid="Canon-S830D" /> - <printer translate="name" name="Canon S900" driver="bjc-s900" manufacturer="Canon" model="1000900" parameters="density_800_params" foomaticid="Canon-S900" /> - <printer translate="name" name="Canon S9000" driver="bjc-s9000" manufacturer="Canon" model="1000900" parameters="density_800_params" foomaticid="Canon-S9000" /> - <printer translate="name" name="Canon S4500" driver="bjc-s4500" manufacturer="Canon" model="6500" parameters="gamma_750_params" foomaticid="Canon-S4500" /> - <printer translate="name" name="Canon SELPHY DS700" driver="bjc-SELPHY-DS700" manufacturer="Canon" model="10000700" parameters="PIXMA_iP4000_params" foomaticid="Canon-SELPHY-DS700" /> - <printer translate="name" name="Canon SELPHY DS810" driver="bjc-SELPHY-DS810" manufacturer="Canon" model="10000810" parameters="PIXMA_iP4000_params" foomaticid="Canon-SELPHY-DS810" /> - <printer translate="name" name="Canon PIXMA mini220" driver="bjc-PIXMA-mini220" manufacturer="Canon" model="11000220" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-mini220" /> - <printer translate="name" name="Canon PIXUS mini220" driver="bjc-PIXUS-mini220" manufacturer="Canon" model="11000220" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-mini220" /> - <printer translate="name" name="Canon PIXMA mini320" driver="bjc-PIXMA-mini320" manufacturer="Canon" model="11000320" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-mini320" /> - <printer translate="name" name="Canon PIXMA mini360" driver="bjc-PIXMA-mini360" manufacturer="Canon" model="11000320" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-mini360" /> - <printer translate="name" name="Canon PIXUS mini360" driver="bjc-PIXUS-mini360" manufacturer="Canon" model="11000320" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-mini360" /> + <printer translate="name" name="Canon BJ-30" driver="bjc-30" manufacturer="Canon" model="30" parameters="gamma_2_density_800_params" /> + <printer translate="name" name="Canon BJC-50" deviceid="MFG:Canon;MDL:BJC-50;" driver="bjc-50" manufacturer="Canon" model="4400" parameters="gamma_5_density_800_params" /> + <printer translate="name" name="Canon BJC-55" deviceid="MFG:Canon;MDL:BJC-55;" driver="bjc-55" manufacturer="Canon" model="4400" parameters="gamma_5_density_800_params" /> + <printer translate="name" name="Canon BJC-80" deviceid="MFG:Canon;MDL:BJC-80;" driver="bjc-80" manufacturer="Canon" model="4400" parameters="gamma_5_density_800_params" /> + <printer translate="name" name="Canon BJC-85" deviceid="MFG:Canon;MDL:BJC-85;" driver="bjc-85" manufacturer="Canon" model="85" parameters="gamma_5_density_800_params" /> + <printer translate="name" name="Canon BJC-210" deviceid="MFG:Canon;MDL:BJC-210;DES:Canon BJC-210;CMD:BJ,LQ,BJL,BJRaster;" driver="bjc-210" manufacturer="Canon" model="210" parameters="density_800_params" /> + <printer translate="name" name="Canon BJC-240" driver="bjc-240" manufacturer="Canon" model="240" parameters="density_800_params" /> + <printer translate="name" name="Canon BJC-250" deviceid="MFG:Canon;MDL:BJC-250;DES:Canon BJC-250;CMD:BJ,LQ,BJL,BJRaster,BSCC;" driver="bjc-250" manufacturer="Canon" model="250" parameters="density_800_params" /> + <printer translate="name" name="Canon BJC-1000" deviceid="MFG:Canon;MDL:BJC-1000;DES:Canon BJC-1000;CMD:BJL,BJRaster,BSCC,TXT01;" driver="bjc-1000" manufacturer="Canon" model="1000" parameters="density_800_params" /> + <printer translate="name" name="Canon BJC-2000" driver="bjc-2000" manufacturer="Canon" model="2000" parameters="density_800_params" /> + <printer translate="name" name="Canon BJC-2010" driver="bjc-2010" manufacturer="Canon" model="2000" parameters="density_800_params" /> + <printer translate="name" name="Canon BJC-2100" deviceid="MFG:Canon;MDL:BJC-2100;DES:Canon BJC-2100;" driver="bjc-2100" manufacturer="Canon" model="4300" parameters="gamma_750_params" /> + <printer translate="name" name="Canon BJC-2110" driver="bjc-2110" manufacturer="Canon" model="2000" parameters="density_800_params" /> + <printer translate="name" name="Canon BJC-3000" deviceid="MFG:Canon;MDL:BJC-3000;DES:Canon BJC-3000;CMD:BJL,BJRaster3,BSCC,TXT01,BJScan2;" driver="bjc-3000" manufacturer="Canon" model="3000" parameters="density_800_params" /> + <printer translate="name" name="Canon BJC-4000" driver="bjc-4000" manufacturer="Canon" model="4300" parameters="gamma_750_params" /> + <printer translate="name" name="Canon BJC-4300" deviceid="MFG:Canon;MDL:BJC-4300;DES:Canon BJC-4300;CMD:BJ,LQ,BJL,BJRaster,BSCC;" driver="bjc-4300" manufacturer="Canon" model="4300" parameters="gamma_750_params" /> + <printer translate="name" name="Canon BJC-4400" deviceid="MFG:Canon;MDL:BJC-4400;DES:Canon BJC-4400;CMD:BJ,LQ,BJL,BJRaster,BSCC;" driver="bjc-4400" manufacturer="Canon" model="4400" parameters="density_800_params" /> + <printer translate="name" name="Canon BJC-4550" driver="bjc-4550" manufacturer="Canon" model="4550" parameters="density_800_params" /> + <printer translate="name" name="Canon BJC-5100" driver="bjc-5100" manufacturer="Canon" model="5100" parameters="density_800_params" /> + <printer translate="name" name="Canon BJC-5500" driver="bjc-5500" manufacturer="Canon" model="5500" parameters="density_800_params" /> + <printer translate="name" name="Canon BJC-5500J" driver="bjc-5500j" manufacturer="Canon" model="5500" parameters="density_800_params" /> + <printer translate="name" name="Canon BJC-6000" deviceid="MFG:Canon;MDL:BJC-6000;DES:Canon BJC-6000;CMD:BJL,BJRaster3,BSCC,TXT;" driver="bjc-6000" manufacturer="Canon" model="6000" parameters="gamma_750_params" /> + <printer translate="name" name="Canon BJC-6100" driver="bjc-6100" manufacturer="Canon" model="6100" parameters="density_800_params" /> + <printer translate="name" name="Canon BJC-6200" deviceid="MFG:Canon;MDL:BJC-6200;DES:Canon BJC-6200;CMD:BJL,BJRaster3,BSCC,TXT01,BJScan2;" driver="bjc-6200" manufacturer="Canon" model="6200" parameters="gamma_750_params" /> + <printer translate="name" name="Canon BJC-6500" driver="bjc-6500" manufacturer="Canon" model="6500" parameters="gamma_750_params" /> + <printer translate="name" name="Canon BJC-7000" driver="bjc-7000" manufacturer="Canon" model="7000" parameters="gamma_6_density_800_params" /> + <printer translate="name" name="Canon BJC-7100" driver="bjc-7100" manufacturer="Canon" model="7100" parameters="density_800_params" /> + <printer translate="name" name="Canon BJC-8200" deviceid="MFG:Canon;MDL:BJC-8200;DES:Canon;CMD:BJL,BJRaster3,BSCC,TXT01;" driver="bjc-8200" manufacturer="Canon" model="8200" parameters="density_800_params" /> + <printer translate="name" name="Canon BJC-8500" driver="bjc-8500" manufacturer="Canon" model="8500" parameters="density_800_params" /> + <printer translate="name" name="Canon S100" deviceid="MFG:Canon;MDL:S100SP;DES:Canon S100SP;CMD:BJL,BJRaster,BSCC,TXT01;" driver="bjc-s100" manufacturer="Canon" model="4300" parameters="gamma_750_params" /> + <printer translate="name" name="Canon S200" driver="bjc-s200" manufacturer="Canon" model="1000200" parameters="gamma_8_density_900_params" /> + <printer translate="name" name="Canon S300" driver="bjc-s300" manufacturer="Canon" model="1000300" parameters="density_800_params" /> + <printer translate="name" name="Canon S330" driver="bjc-s330" manufacturer="Canon" model="1000330" parameters="density_800_params" /> + <printer translate="name" name="Canon S400" driver="bjc-s400" manufacturer="Canon" model="3000" parameters="density_800_params" /> + <printer translate="name" name="Canon S450" driver="bjc-s450" manufacturer="Canon" model="6200" parameters="gamma_750_params" /> + <printer translate="name" name="Canon S500" driver="bjc-s500" manufacturer="Canon" model="1000500" parameters="density_800_params" /> + <printer translate="name" name="Canon S520" driver="bjc-s520" manufacturer="Canon" model="1000520" parameters="density_800_params" /> + <printer translate="name" name="Canon S530D" driver="bjc-s530D" manufacturer="Canon" model="1000520" parameters="density_800_params" /> + <printer translate="name" name="Canon S600" deviceid="MFG:Canon;MDL:S600;DES:Canon S600;CMD:BJL,BJRaster3,BSCC,TXT01;" driver="bjc-s600" manufacturer="Canon" model="1000600" parameters="density_800_params" /> + <printer translate="name" name="Canon S630" driver="bjc-s630" manufacturer="Canon" model="1000600" parameters="density_800_params" /> + <printer translate="name" name="Canon S750" driver="bjc-s750" manufacturer="Canon" model="1000750" parameters="density_800_params" /> + <printer translate="name" name="Canon S800" driver="bjc-s800" manufacturer="Canon" model="1000800" parameters="density_800_params" /> + <printer translate="name" name="Canon S820" driver="bjc-s820" manufacturer="Canon" model="1000820" parameters="density_800_params" /> + <printer translate="name" name="Canon S830D" driver="bjc-s830" manufacturer="Canon" model="1000830" parameters="density_800_params" /> + <printer translate="name" name="Canon S900" driver="bjc-s900" manufacturer="Canon" model="1000900" parameters="density_800_params" /> + <printer translate="name" name="Canon S9000" driver="bjc-s9000" manufacturer="Canon" model="1000900" parameters="density_800_params" /> + <printer translate="name" name="Canon S4500" driver="bjc-s4500" manufacturer="Canon" model="6500" parameters="gamma_750_params" /> + <printer translate="name" name="Canon SELPHY DS700" driver="bjc-SELPHY-DS700" manufacturer="Canon" model="10000700" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon SELPHY DS810" driver="bjc-SELPHY-DS810" manufacturer="Canon" model="10000810" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon PIXMA mini220" driver="bjc-PIXMA-mini220" manufacturer="Canon" model="11000220" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon PIXUS mini220" driver="bjc-PIXUS-mini220" manufacturer="Canon" model="11000220" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon PIXMA mini320" driver="bjc-PIXMA-mini320" manufacturer="Canon" model="11000320" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon PIXMA mini360" driver="bjc-PIXMA-mini360" manufacturer="Canon" model="11000320" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon PIXUS mini360" driver="bjc-PIXUS-mini360" manufacturer="Canon" model="11000320" parameters="PIXMA_iP4000_params" /> <!-- Canon iP90 family --> - <printer translate="name" name="Canon iP90 series" driver="bjc-iP90-series" manufacturer="Canon" model="3000090" parameters="PIXMA_iP4000_params" foomaticid="Canon-iP90-series"/> - <printer translate="name" name="Canon PIXMA iP90" driver="bjc-PIXMA-iP90" manufacturer="Canon" model="3000090" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP90" /> - <printer translate="name" name="Canon PIXUS iP90" driver="bjc-PIXUS-iP90" manufacturer="Canon" model="3000090" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP90" /> - <printer translate="name" name="Canon PIXMA iP90v" driver="bjc-PIXMA-iP90v" manufacturer="Canon" model="3000090" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP90v" /> - <printer translate="name" name="Canon PIXUS iP90v" driver="bjc-PIXUS-iP90v" manufacturer="Canon" model="3000090" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP90v" /> + <printer translate="name" name="Canon iP90 series" driver="bjc-iP90-series" manufacturer="Canon" model="3000090" parameters="PIXMA_iP4000_params"/> + <printer translate="name" name="Canon PIXMA iP90" driver="bjc-PIXMA-iP90" manufacturer="Canon" model="3000090" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon PIXUS iP90" driver="bjc-PIXUS-iP90" manufacturer="Canon" model="3000090" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon PIXMA iP90v" driver="bjc-PIXMA-iP90v" manufacturer="Canon" model="3000090" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon PIXUS iP90v" driver="bjc-PIXUS-iP90v" manufacturer="Canon" model="3000090" parameters="PIXMA_iP4000_params" /> <!-- Canon iP100 family --> - <printer translate="name" name="Canon iP100 series" driver="bjc-iP100-series" manufacturer="Canon" model="3000100" parameters="PIXMA_iP4000_params" foomaticid="Canon-iP100-series"/> - <printer translate="name" name="Canon PIXMA iP100" driver="bjc-PIXMA-iP100" manufacturer="Canon" model="3000100" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP100" /> - <printer translate="name" name="Canon PIXUS iP100" driver="bjc-PIXUS-iP100" manufacturer="Canon" model="3000100" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP100" /> + <printer translate="name" name="Canon iP100 series" driver="bjc-iP100-series" manufacturer="Canon" model="3000100" parameters="PIXMA_iP4000_params"/> + <printer translate="name" name="Canon PIXMA iP100" driver="bjc-PIXMA-iP100" manufacturer="Canon" model="3000100" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon PIXUS iP100" driver="bjc-PIXUS-iP100" manufacturer="Canon" model="3000100" parameters="PIXMA_iP4000_params" /> <!-- Canon iP110 family --> - <printer translate="name" name="Canon iP110 series" driver="bjc-iP110-series" manufacturer="Canon" model="3000110" parameters="PIXMA_iP4000_params" foomaticid="Canon-iP110-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP110" driver="bjc-PIXMA-iP110" manufacturer="Canon" model="3000110" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP110">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP110" driver="bjc-PIXUS-iP110" manufacturer="Canon" model="3000110" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP110">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iP110 series" driver="bjc-iP110-series" manufacturer="Canon" model="3000110" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP110" driver="bjc-PIXMA-iP110" manufacturer="Canon" model="3000110" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP110" driver="bjc-PIXUS-iP110" manufacturer="Canon" model="3000110" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP2000 family --> - <printer translate="name" name="Canon iP2000 series" driver="bjc-iP2000-series" manufacturer="Canon" model="3002000" parameters="PIXMA_iP4000_params" foomaticid="Canon-iP2000-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP2000" driver="bjc-PIXMA-iP2000" manufacturer="Canon" model="3002000" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP2000">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP2000" driver="bjc-PIXUS-iP2000" manufacturer="Canon" model="3002000" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP2000">>EXPERIMENTAL</printer> + <printer translate="name" name="Canon iP2000 series" driver="bjc-iP2000-series" manufacturer="Canon" model="3002000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP2000" driver="bjc-PIXMA-iP2000" manufacturer="Canon" model="3002000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP2000" driver="bjc-PIXUS-iP2000" manufacturer="Canon" model="3002000" parameters="PIXMA_iP4000_params">>EXPERIMENTAL</printer> <!-- Canon iP2700 family --> - <printer translate="name" name="Canon iP2700 series" deviceid="MFG:Canon;CMD:BJL,BJRaster3,BSCCe,IVEC,IVECPLI;SOJ:TXT01;MDL:iP2700 series;CLS:PRINTER;DES:Canon iP2700 series;VER:1.030;STA:30;FSI:00;HRI:EU;MSI:AOFF,BOFF,DAT,E3;PDR:4;" driver="bjc-iP2700-series" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params" foomaticid="Canon-iP2700-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP2700" driver="bjc-PIXMA-iP2700" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP2700">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP2700" driver="bjc-PIXUS-iP2700" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP2700">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP2701" driver="bjc-PIXMA-iP2701" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP2701">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP2702" driver="bjc-PIXMA-iP2702" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP2702">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP2740" driver="bjc-PIXMA-iP2740" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP2740">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP2760" driver="bjc-PIXMA-iP2760" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP2760">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP2770" driver="bjc-PIXMA-iP2770" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP2770">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP2772" driver="bjc-PIXMA-iP2772" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP2772">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP2780" driver="bjc-PIXMA-iP2780" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP2780">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP2788" driver="bjc-PIXMA-iP2788" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP2788">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iP2700 series" deviceid="MFG:Canon;CMD:BJL,BJRaster3,BSCCe,IVEC,IVECPLI;SOJ:TXT01;MDL:iP2700 series;CLS:PRINTER;DES:Canon iP2700 series;VER:1.030;STA:30;FSI:00;HRI:EU;MSI:AOFF,BOFF,DAT,E3;PDR:4;" driver="bjc-iP2700-series" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP2700" driver="bjc-PIXMA-iP2700" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP2700" driver="bjc-PIXUS-iP2700" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP2701" driver="bjc-PIXMA-iP2701" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP2702" driver="bjc-PIXMA-iP2702" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP2740" driver="bjc-PIXMA-iP2740" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP2760" driver="bjc-PIXMA-iP2760" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP2770" driver="bjc-PIXMA-iP2770" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP2772" driver="bjc-PIXMA-iP2772" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP2780" driver="bjc-PIXMA-iP2780" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP2788" driver="bjc-PIXMA-iP2788" manufacturer="Canon" model="3002700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP2800 family --> - <printer translate="name" name="Canon iP2800 series" driver="bjc-iP2800-series" manufacturer="Canon" model="3002800" parameters="PIXMA_iP4000_params" foomaticid="Canon-iP2800-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP2810" driver="bjc-PIXMA-iP2810" manufacturer="Canon" model="3002800" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP2810">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP2820" driver="bjc-PIXMA-iP2820" manufacturer="Canon" model="3002800" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP2820">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP2840" driver="bjc-PIXMA-iP2840" manufacturer="Canon" model="3002800" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP2840">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP2850" driver="bjc-PIXMA-iP2850" manufacturer="Canon" model="3002800" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP2850">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP2870" driver="bjc-PIXMA-iP2870" manufacturer="Canon" model="3002800" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP2870">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP2872" driver="bjc-PIXMA-iP2872" manufacturer="Canon" model="3002800" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP2872">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP2880" driver="bjc-PIXMA-iP2880" manufacturer="Canon" model="3002800" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP2880">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP2890" driver="bjc-PIXMA-iP2890" manufacturer="Canon" model="3002800" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP2890">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iP2800 series" driver="bjc-iP2800-series" manufacturer="Canon" model="3002800" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP2810" driver="bjc-PIXMA-iP2810" manufacturer="Canon" model="3002800" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP2820" driver="bjc-PIXMA-iP2820" manufacturer="Canon" model="3002800" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP2840" driver="bjc-PIXMA-iP2840" manufacturer="Canon" model="3002800" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP2850" driver="bjc-PIXMA-iP2850" manufacturer="Canon" model="3002800" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP2870" driver="bjc-PIXMA-iP2870" manufacturer="Canon" model="3002800" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP2872" driver="bjc-PIXMA-iP2872" manufacturer="Canon" model="3002800" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP2880" driver="bjc-PIXMA-iP2880" manufacturer="Canon" model="3002800" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP2890" driver="bjc-PIXMA-iP2890" manufacturer="Canon" model="3002800" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP3000 --> - <printer translate="name" name="Canon PIXMA iP3000" deviceid="MFG:Canon;CMD:BJL,BJRaster3,BSCCe;SOJ:TXT01;MDL:iP3000;CLS:PRINTER;DES:Canon iP3000;VER:1.06;STA:10;FSI:03;" driver="bjc-PIXMA-iP3000" manufacturer="Canon" model="3003000" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP3000">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP3000" deviceid="MFG:Canon;CMD:BJL,BJRaster3,BSCCe;SOJ:TXT01;MDL:iP3000;CLS:PRINTER;DES:Canon iP3000;VER:1.06;STA:10;FSI:03;" driver="bjc-PIXMA-iP3000" manufacturer="Canon" model="3003000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP3100 (PIXUS only, PIXMA iP3100 does not exist) --> - <printer translate="name" name="Canon PIXMA iP3100" driver="bjc-PIXMA-iP3100" manufacturer="Canon" model="3003100" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP3100">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP3100" driver="bjc-PIXUS-iP3100" manufacturer="Canon" model="3003100" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP3100">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP3100" driver="bjc-PIXMA-iP3100" manufacturer="Canon" model="3003100" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP3100" driver="bjc-PIXUS-iP3100" manufacturer="Canon" model="3003100" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP3300 family --> - <printer translate="name" name="Canon iP3300 series" driver="bjc-iP3300-series" manufacturer="Canon" model="3003300" parameters="PIXMA_iP4000_params" foomaticid="Canon-iP3300-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP3300" driver="bjc-PIXMA-iP3300" manufacturer="Canon" model="3003300" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP3300">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP3300" driver="bjc-PIXUS-iP3300" manufacturer="Canon" model="3003300" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP3300">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iP3300 series" driver="bjc-iP3300-series" manufacturer="Canon" model="3003300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP3300" driver="bjc-PIXMA-iP3300" manufacturer="Canon" model="3003300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP3300" driver="bjc-PIXUS-iP3300" manufacturer="Canon" model="3003300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP3500 family --> - <printer translate="name" name="Canon iP3500 series" driver="bjc-iP3500-series" manufacturer="Canon" model="3003500" parameters="PIXMA_iP4000_params" foomaticid="Canon-iP3500-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP3500" driver="bjc-PIXMA-iP3500" manufacturer="Canon" model="3003500" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP3500">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP3500" driver="bjc-PIXUS-iP3500" manufacturer="Canon" model="3003500" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP3500">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iP3500 series" driver="bjc-iP3500-series" manufacturer="Canon" model="3003500" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP3500" driver="bjc-PIXMA-iP3500" manufacturer="Canon" model="3003500" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP3500" driver="bjc-PIXUS-iP3500" manufacturer="Canon" model="3003500" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP3600 family --> - <printer translate="name" name="Canon iP3600 series" driver="bjc-iP3600-series" manufacturer="Canon" model="3003600" parameters="PIXMA_iP4000_params" foomaticid="Canon-iP3600-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP3600" driver="bjc-PIXMA-iP3600" manufacturer="Canon" model="3003600" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP3600">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP3600" driver="bjc-PIXUS-iP3600" manufacturer="Canon" model="3003600" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP3600">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP3680" driver="bjc-PIXMA-iP3680" manufacturer="Canon" model="3003600" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP3680">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iP3600 series" driver="bjc-iP3600-series" manufacturer="Canon" model="3003600" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP3600" driver="bjc-PIXMA-iP3600" manufacturer="Canon" model="3003600" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP3600" driver="bjc-PIXUS-iP3600" manufacturer="Canon" model="3003600" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP3680" driver="bjc-PIXMA-iP3680" manufacturer="Canon" model="3003600" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP4000 --> - <printer translate="name" name="Canon PIXMA iP4000" deviceid="MFG:Canon;MDL:iP4000;CMD:BJL,BJRaster3,BSCCe;" driver="bjc-iP4000" manufacturer="Canon" model="3004000" parameters="PIXMA_iP4000_params" foomaticid="Canon-iP4000" /><!-- driver and foomaticid legacy: missing brand name in both --> + <printer translate="name" name="Canon PIXMA iP4000" deviceid="MFG:Canon;MDL:iP4000;CMD:BJL,BJRaster3,BSCCe;" driver="bjc-iP4000" manufacturer="Canon" model="3004000" parameters="PIXMA_iP4000_params" /><!-- driver legacy: missing brand name in both --> <!-- Canon iP4000R --> - <printer translate="name" name="Canon PIXMA iP4000R" driver="bjc-PIXMA-iP4000R" manufacturer="Canon" model="3004000" parameters="PIXMA_iP4000_params" foomaticid="Canon-iP4000R" /><!-- driver and foomaticid legacy: missing brand name in one --> + <printer translate="name" name="Canon PIXMA iP4000R" driver="bjc-PIXMA-iP4000R" manufacturer="Canon" model="3004000" parameters="PIXMA_iP4000_params" /><!-- driver legacy: missing brand name in one --> <!-- Canon iP4100 (PIXUS only, PIXMA iP4100 does not exist) --> - <printer translate="name" name="Canon PIXMA iP4100" driver="bjc-PIXMA-iP4100" manufacturer="Canon" model="3004100" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP4100">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP4100" driver="bjc-PIXUS-iP4100" manufacturer="Canon" model="3004100" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP4100">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4100" driver="bjc-PIXMA-iP4100" manufacturer="Canon" model="3004100" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP4100" driver="bjc-PIXUS-iP4100" manufacturer="Canon" model="3004100" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP4100R (PIXUS only, PIXMA iP4100R does not exist) --> - <printer translate="name" name="Canon PIXUS iP4100R" driver="bjc-PIXUS-iP4100R" manufacturer="Canon" model="3004100" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP4100R">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4100R" driver="bjc-PIXMA-iP4100R" manufacturer="Canon" model="3004100" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP4100R">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP4100R" driver="bjc-PIXUS-iP4100R" manufacturer="Canon" model="3004100" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4100R" driver="bjc-PIXMA-iP4100R" manufacturer="Canon" model="3004100" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP4200 family --> - <printer translate="name" name="Canon iP4200 series" deviceid="MFG:Canon;MDL:iP4200;CMD:BJL,BJRaster3,BSCCe;" driver="bjc-iP4200-series" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4200_params" foomaticid="Canon-iP4200-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4200" driver="bjc-PIXMA-iP4200" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4200_params" foomaticid="Canon-PIXMA-iP4200">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP4200" driver="bjc-PIXUS-iP4200" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4200_params" foomaticid="Canon-PIXUS-iP4200">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iP4200 series" deviceid="MFG:Canon;MDL:iP4200;CMD:BJL,BJRaster3,BSCCe;" driver="bjc-iP4200-series" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4200_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4200" driver="bjc-PIXMA-iP4200" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4200_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP4200" driver="bjc-PIXUS-iP4200" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4200_params">EXPERIMENTAL</printer> <!-- Canon iP4300 family --> - <printer translate="name" name="Canon iP4300 series" driver="bjc-iP4300-series" manufacturer="Canon" model="3004300" parameters="PIXMA_iP4300_params" foomaticid="Canon-iP4300-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4300" driver="bjc-PIXMA-iP4300" manufacturer="Canon" model="3004300" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4300">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP4300" driver="bjc-PIXUS-iP4300" manufacturer="Canon" model="3004300" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-iP4300">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iP4300 series" driver="bjc-iP4300-series" manufacturer="Canon" model="3004300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4300" driver="bjc-PIXMA-iP4300" manufacturer="Canon" model="3004300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP4300" driver="bjc-PIXUS-iP4300" manufacturer="Canon" model="3004300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon iP4500 family --> - <printer translate="name" name="Canon iP4500 series" driver="bjc-iP4500-series" manufacturer="Canon" model="3004500" parameters="PIXMA_iP4300_params" foomaticid="Canon-iP4500-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4500" driver="bjc-PIXMA-iP4500" manufacturer="Canon" model="3004500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4500">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP4500" driver="bjc-PIXUS-iP4500" manufacturer="Canon" model="3004500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-iP4500">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iP4500 series" driver="bjc-iP4500-series" manufacturer="Canon" model="3004500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4500" driver="bjc-PIXMA-iP4500" manufacturer="Canon" model="3004500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP4500" driver="bjc-PIXUS-iP4500" manufacturer="Canon" model="3004500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon iP4600 family --> - <printer translate="name" name="Canon iP4600 series" driver="bjc-iP4600-series" manufacturer="Canon" model="3004600" parameters="PIXMA_iP4300_params" foomaticid="Canon-iP4600-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4600" driver="bjc-PIXMA-iP4600" manufacturer="Canon" model="3004600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4600">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP4600" driver="bjc-PIXUS-iP4600" manufacturer="Canon" model="3004600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-iP4600">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4680" driver="bjc-PIXMA-iP4680" manufacturer="Canon" model="3004600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4680">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iP4600 series" driver="bjc-iP4600-series" manufacturer="Canon" model="3004600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4600" driver="bjc-PIXMA-iP4600" manufacturer="Canon" model="3004600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP4600" driver="bjc-PIXUS-iP4600" manufacturer="Canon" model="3004600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4680" driver="bjc-PIXMA-iP4680" manufacturer="Canon" model="3004600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon iP4700 family --> - <printer translate="name" name="Canon iP4700 series" driver="bjc-iP4700-series" manufacturer="Canon" model="3004700" parameters="PIXMA_iP4300_params" foomaticid="Canon-iP4700-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4700" driver="bjc-PIXMA-iP4700" manufacturer="Canon" model="3004700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4700">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP4700" driver="bjc-PIXUS-iP4700" manufacturer="Canon" model="3004700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-iP4700">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4760" driver="bjc-PIXMA-iP4760" manufacturer="Canon" model="3004700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4760">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iP4700 series" driver="bjc-iP4700-series" manufacturer="Canon" model="3004700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4700" driver="bjc-PIXMA-iP4700" manufacturer="Canon" model="3004700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP4700" driver="bjc-PIXUS-iP4700" manufacturer="Canon" model="3004700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4760" driver="bjc-PIXMA-iP4760" manufacturer="Canon" model="3004700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon iP4800 family --> - <printer translate="name" name="Canon iP4800 series" driver="bjc-iP4800-series" manufacturer="Canon" model="3004800" parameters="PIXMA_iP4300_params" foomaticid="Canon-iP4800-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4800" driver="bjc-PIXMA-iP4800" manufacturer="Canon" model="3004800" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4800">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4810" driver="bjc-PIXMA-iP4810" manufacturer="Canon" model="3004800" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4810">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4820" driver="bjc-PIXMA-iP4820" manufacturer="Canon" model="3004800" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4820">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP4830" driver="bjc-PIXUS-iP4830" manufacturer="Canon" model="3004800" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-iP4830">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4840" driver="bjc-PIXMA-iP4840" manufacturer="Canon" model="3004800" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4840">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4850" driver="bjc-PIXMA-iP4850" manufacturer="Canon" model="3004800" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4850">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4870" driver="bjc-PIXMA-iP4870" manufacturer="Canon" model="3004800" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4870">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4880" driver="bjc-PIXMA-iP4880" manufacturer="Canon" model="3004800" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4880">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iP4800 series" driver="bjc-iP4800-series" manufacturer="Canon" model="3004800" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4800" driver="bjc-PIXMA-iP4800" manufacturer="Canon" model="3004800" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4810" driver="bjc-PIXMA-iP4810" manufacturer="Canon" model="3004800" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4820" driver="bjc-PIXMA-iP4820" manufacturer="Canon" model="3004800" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP4830" driver="bjc-PIXUS-iP4830" manufacturer="Canon" model="3004800" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4840" driver="bjc-PIXMA-iP4840" manufacturer="Canon" model="3004800" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4850" driver="bjc-PIXMA-iP4850" manufacturer="Canon" model="3004800" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4870" driver="bjc-PIXMA-iP4870" manufacturer="Canon" model="3004800" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4880" driver="bjc-PIXMA-iP4880" manufacturer="Canon" model="3004800" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon iP4900 family --> - <printer translate="name" name="Canon iP4900 series" driver="bjc-iP4900-series" manufacturer="Canon" model="3004900" parameters="PIXMA_iP4300_params" foomaticid="Canon-iP4900-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4900" driver="bjc-PIXMA-iP4900" manufacturer="Canon" model="3004900" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4900">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4910" driver="bjc-PIXMA-iP4910" manufacturer="Canon" model="3004900" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4910">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4920" driver="bjc-PIXMA-iP4920" manufacturer="Canon" model="3004900" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4920">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP4930" driver="bjc-PIXUS-iP4930" manufacturer="Canon" model="3004900" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-iP4930">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4940" driver="bjc-PIXMA-iP4940" manufacturer="Canon" model="3004900" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4940">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4950" driver="bjc-PIXMA-iP4950" manufacturer="Canon" model="3004900" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4950">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4970" driver="bjc-PIXMA-iP4970" manufacturer="Canon" model="3004900" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4970">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP4980" driver="bjc-PIXMA-iP4980" manufacturer="Canon" model="3004900" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-iP4980">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iP4900 series" driver="bjc-iP4900-series" manufacturer="Canon" model="3004900" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4900" driver="bjc-PIXMA-iP4900" manufacturer="Canon" model="3004900" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4910" driver="bjc-PIXMA-iP4910" manufacturer="Canon" model="3004900" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4920" driver="bjc-PIXMA-iP4920" manufacturer="Canon" model="3004900" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP4930" driver="bjc-PIXUS-iP4930" manufacturer="Canon" model="3004900" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4940" driver="bjc-PIXMA-iP4940" manufacturer="Canon" model="3004900" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4950" driver="bjc-PIXMA-iP4950" manufacturer="Canon" model="3004900" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4970" driver="bjc-PIXMA-iP4970" manufacturer="Canon" model="3004900" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP4980" driver="bjc-PIXMA-iP4980" manufacturer="Canon" model="3004900" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon iP5000 --> - <printer translate="name" name="Canon PIXMA iP5000" driver="bjc-PIXMA-iP5000" manufacturer="Canon" model="3005000" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP5000">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP5000" driver="bjc-PIXMA-iP5000" manufacturer="Canon" model="3005000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP5200 --> - <printer translate="name" name="Canon PIXMA iP5200" driver="bjc-PIXMA-iP5200" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP5200">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP5200" driver="bjc-PIXMA-iP5200" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP5200R family --> - <printer translate="name" name="Canon iP5200R series" driver="bjc-iP5200R-series" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4000_params" foomaticid="Canon-iP5200R-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP5200R" driver="bjc-PIXMA-iP5200R" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP5200R">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP5200R" driver="bjc-PIXUS-iP5200R" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP5200R">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iP5200R series" driver="bjc-iP5200R-series" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP5200R" driver="bjc-PIXMA-iP5200R" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP5200R" driver="bjc-PIXUS-iP5200R" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP5300 --> - <printer translate="name" name="Canon PIXMA iP5300" driver="bjc-PIXMA-iP5300" manufacturer="Canon" model="3005300" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP5300">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP5300" driver="bjc-PIXMA-iP5300" manufacturer="Canon" model="3005300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP6000D --> - <printer translate="name" name="Canon PIXMA iP6000D" driver="bjc-PIXMA-iP6000D" manufacturer="Canon" model="3006000" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP6000D">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP6000D" driver="bjc-PIXMA-iP6000D" manufacturer="Canon" model="3006000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP6100D (PIXUS only, PIXMA iP6100D does not exist) --> - <printer translate="name" name="Canon PIXMA iP6100D" driver="bjc-PIXMA-iP6100D" manufacturer="Canon" model="3006100" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP6100D">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP6100D" driver="bjc-PIXUS-iP6100D" manufacturer="Canon" model="3006100" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP6100D">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP6100D" driver="bjc-PIXMA-iP6100D" manufacturer="Canon" model="3006100" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP6100D" driver="bjc-PIXUS-iP6100D" manufacturer="Canon" model="3006100" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP6210 --> - <printer translate="name" name="Canon PIXMA iP6210D" driver="bjc-PIXMA-iP6210D" manufacturer="Canon" model="3006210" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP6210D">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP6210D" driver="bjc-PIXMA-iP6210D" manufacturer="Canon" model="3006210" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP6220 --> - <printer translate="name" name="Canon PIXMA iP6220D" driver="bjc-PIXMA-iP6220D" manufacturer="Canon" model="3006210" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP6220D">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP6220D" driver="bjc-PIXMA-iP6220D" manufacturer="Canon" model="3006210" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP6310 --> - <printer translate="name" name="Canon PIXMA iP6310D" driver="bjc-PIXMA-iP6310D" manufacturer="Canon" model="3006210" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP6310D">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP6310D" driver="bjc-PIXMA-iP6310D" manufacturer="Canon" model="3006210" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP6320D --> - <printer translate="name" name="Canon PIXMA iP6320D" driver="bjc-PIXMA-iP6320D" manufacturer="Canon" model="3006210" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP6320D">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP6320D" driver="bjc-PIXMA-iP6320D" manufacturer="Canon" model="3006210" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP6600D family --> - <printer translate="name" name="Canon iP6600D series" driver="bjc-iP6600D-series" manufacturer="Canon" model="3006600" parameters="PIXMA_iP4000_params" foomaticid="Canon-iP6600D-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP6600D" driver="bjc-PIXMA-iP6600D" manufacturer="Canon" model="3006600" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP6600D">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP6600D" driver="bjc-PIXUS-iP6600D" manufacturer="Canon" model="3006600" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP6600D">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iP6600D series" driver="bjc-iP6600D-series" manufacturer="Canon" model="3006600" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP6600D" driver="bjc-PIXMA-iP6600D" manufacturer="Canon" model="3006600" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP6600D" driver="bjc-PIXUS-iP6600D" manufacturer="Canon" model="3006600" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP6700D family --> - <printer translate="name" name="Canon iP6700D series" driver="bjc-iP6700-series" manufacturer="Canon" model="3006700" parameters="PIXMA_iP4000_params" foomaticid="Canon-iP6700-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP6700D" driver="bjc-PIXMA-iP6700" manufacturer="Canon" model="3006700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP6700">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP6700D" driver="bjc-PIXUS-iP6700" manufacturer="Canon" model="3006700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP6700">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iP6700D series" driver="bjc-iP6700-series" manufacturer="Canon" model="3006700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP6700D" driver="bjc-PIXMA-iP6700" manufacturer="Canon" model="3006700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP6700D" driver="bjc-PIXUS-iP6700" manufacturer="Canon" model="3006700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP7100 (PIXUS only, PIXMA iP7100 does not exist) --> - <printer translate="name" name="Canon PIXMA iP7100" driver="bjc-PIXMA-iP7100" manufacturer="Canon" model="3007100" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP7100">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP7100" driver="bjc-PIXUS-iP7100" manufacturer="Canon" model="3007100" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP7100">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP7100" driver="bjc-PIXMA-iP7100" manufacturer="Canon" model="3007100" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP7100" driver="bjc-PIXUS-iP7100" manufacturer="Canon" model="3007100" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP7200 family --> - <printer translate="name" name="Canon iP7200 series" driver="bjc-iP7200-series" manufacturer="Canon" model="3007200" parameters="PIXMA_iP4000_params" foomaticid="Canon-iP7200-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP7210" driver="bjc-PIXMA-iP7210" manufacturer="Canon" model="3007200" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP7210">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP7220" driver="bjc-PIXMA-iP7220" manufacturer="Canon" model="3007200" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP7220">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP7230" driver="bjc-PIXUS-iP7230" manufacturer="Canon" model="3007200" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP7230">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP7240" driver="bjc-PIXMA-iP7240" manufacturer="Canon" model="3007200" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP7240">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP7250" driver="bjc-PIXMA-iP7250" manufacturer="Canon" model="3007200" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP7250">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP7260" driver="bjc-PIXMA-iP7260" manufacturer="Canon" model="3007200" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP7260">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP7270" driver="bjc-PIXMA-iP7270" manufacturer="Canon" model="3007200" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP7270">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP7280" driver="bjc-PIXMA-iP7280" manufacturer="Canon" model="3007200" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP7280">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iP7200 series" driver="bjc-iP7200-series" manufacturer="Canon" model="3007200" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP7210" driver="bjc-PIXMA-iP7210" manufacturer="Canon" model="3007200" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP7220" driver="bjc-PIXMA-iP7220" manufacturer="Canon" model="3007200" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP7230" driver="bjc-PIXUS-iP7230" manufacturer="Canon" model="3007200" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP7240" driver="bjc-PIXMA-iP7240" manufacturer="Canon" model="3007200" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP7250" driver="bjc-PIXMA-iP7250" manufacturer="Canon" model="3007200" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP7260" driver="bjc-PIXMA-iP7260" manufacturer="Canon" model="3007200" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP7270" driver="bjc-PIXMA-iP7270" manufacturer="Canon" model="3007200" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP7280" driver="bjc-PIXMA-iP7280" manufacturer="Canon" model="3007200" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP7500 (PIXUS only, PIXMA iP7500 does not exist) --> - <printer translate="name" name="Canon PIXMA iP7500" driver="bjc-PIXMA-iP7500" manufacturer="Canon" model="3007500" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP7500">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP7500" driver="bjc-PIXUS-iP7500" manufacturer="Canon" model="3007500" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP7500">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP7500" driver="bjc-PIXMA-iP7500" manufacturer="Canon" model="3007500" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP7500" driver="bjc-PIXUS-iP7500" manufacturer="Canon" model="3007500" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP8100 (PIXUS only, PIXMA iP8100 does not exist) --> - <printer translate="name" name="Canon PIXMA iP8100" driver="bjc-PIXMA-iP8100" manufacturer="Canon" model="3008100" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP8100">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP8100" driver="bjc-PIXUS-iP8100" manufacturer="Canon" model="3008100" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP8100">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP8100" driver="bjc-PIXMA-iP8100" manufacturer="Canon" model="3008100" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP8100" driver="bjc-PIXUS-iP8100" manufacturer="Canon" model="3008100" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP8500 --> - <printer translate="name" name="Canon PIXMA iP8500" deviceid="MFG:Canon;MDL:iP8500;CMD:BJL,BJRaster3,BSCCe;" driver="bjc-PIXMA-iP8500" manufacturer="Canon" model="3008500" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP8500">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP8500" deviceid="MFG:Canon;MDL:iP8500;CMD:BJL,BJRaster3,BSCCe;" driver="bjc-PIXMA-iP8500" manufacturer="Canon" model="3008500" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP8600 (PIXUS only, PIXMA iP8600 does not exist) --> - <printer translate="name" name="Canon PIXMA iP8600" driver="bjc-PIXMA-iP8600" manufacturer="Canon" model="3008600" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP8600">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP8600" driver="bjc-PIXUS-iP8600" manufacturer="Canon" model="3008600" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP8600">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP8600" driver="bjc-PIXMA-iP8600" manufacturer="Canon" model="3008600" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP8600" driver="bjc-PIXUS-iP8600" manufacturer="Canon" model="3008600" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP8700 family --> - <printer translate="name" name="Canon iP8700 series" driver="bjc-iP8700-series" manufacturer="Canon" model="3008700" parameters="PIXMA_iP4000_params" foomaticid="Canon-iP8700-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP7810" driver="bjc-PIXMA-iP8710" manufacturer="Canon" model="3008700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP8710">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP8720" driver="bjc-PIXMA-iP8720" manufacturer="Canon" model="3008700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP8720">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP8730" driver="bjc-PIXUS-iP8730" manufacturer="Canon" model="3008700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP8730">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP8740" driver="bjc-PIXMA-iP8740" manufacturer="Canon" model="3008700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP8740">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP8750" driver="bjc-PIXMA-iP8750" manufacturer="Canon" model="3008700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP8750">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP8760" driver="bjc-PIXMA-iP8760" manufacturer="Canon" model="3008700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP8760">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP8770" driver="bjc-PIXMA-iP8770" manufacturer="Canon" model="3008700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP8770">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iP8780" driver="bjc-PIXMA-iP8780" manufacturer="Canon" model="3008700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP8780">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iP8700 series" driver="bjc-iP8700-series" manufacturer="Canon" model="3008700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP7810" driver="bjc-PIXMA-iP8710" manufacturer="Canon" model="3008700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP8720" driver="bjc-PIXMA-iP8720" manufacturer="Canon" model="3008700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP8730" driver="bjc-PIXUS-iP8730" manufacturer="Canon" model="3008700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP8740" driver="bjc-PIXMA-iP8740" manufacturer="Canon" model="3008700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP8750" driver="bjc-PIXMA-iP8750" manufacturer="Canon" model="3008700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP8760" driver="bjc-PIXMA-iP8760" manufacturer="Canon" model="3008700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP8770" driver="bjc-PIXMA-iP8770" manufacturer="Canon" model="3008700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP8780" driver="bjc-PIXMA-iP8780" manufacturer="Canon" model="3008700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iP9910 (PIXUS only, PIXMA iP9910 does not exist) --> - <printer translate="name" name="Canon PIXMA iP9910" driver="bjc-PIXMA-iP9910" manufacturer="Canon" model="3009910" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-iP9910">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iP9910" driver="bjc-PIXUS-iP9910" manufacturer="Canon" model="3009910" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-iP9910">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iP9910" driver="bjc-PIXMA-iP9910" manufacturer="Canon" model="3009910" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iP9910" driver="bjc-PIXUS-iP9910" manufacturer="Canon" model="3009910" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon iX4000 --> - <printer translate="name" name="Canon PIXMA iX4000" driver="bjc-PIXMA-iX4000" manufacturer="Canon" model="4004000" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXMA-iX4000">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iX4000" driver="bjc-PIXMA-iX4000" manufacturer="Canon" model="4004000" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> <!-- Canon iX5000 family --> - <printer translate="name" name="Canon iX5000 series" driver="bjc-iX5000-series" manufacturer="Canon" model="4005000" parameters="PIXMA_iX5000_params" foomaticid="Canon-iX5000-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iX5000" driver="bjc-PIXMA-iX5000" manufacturer="Canon" model="4005000" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXMA-iX5000">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iX5000" driver="bjc-PIXUS-iX5000" manufacturer="Canon" model="4005000" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXUS-iX5000">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iX5000 series" driver="bjc-iX5000-series" manufacturer="Canon" model="4005000" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iX5000" driver="bjc-PIXMA-iX5000" manufacturer="Canon" model="4005000" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iX5000" driver="bjc-PIXUS-iX5000" manufacturer="Canon" model="4005000" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> <!-- Canon iX6500 family --> - <printer translate="name" name="Canon iX6500 series" driver="bjc-iX6500-series" manufacturer="Canon" model="4006500" parameters="PIXMA_iX5000_params" foomaticid="Canon-iX6500-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iX6500" driver="bjc-PIXMA-iX6500" manufacturer="Canon" model="4006500" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXMA-iX6500">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iX6510" driver="bjc-PIXMA-iX6510" manufacturer="Canon" model="4006500" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXMA-iX6510">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iX6520" driver="bjc-PIXMA-iX6520" manufacturer="Canon" model="4006500" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXMA-iX6520">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iX6530" driver="bjc-PIXUS-iX6530" manufacturer="Canon" model="4006500" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXUS-iX6530">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iX6540" driver="bjc-PIXMA-iX6540" manufacturer="Canon" model="4006500" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXMA-iX6540">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iX6550" driver="bjc-PIXMA-iX6550" manufacturer="Canon" model="4006500" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXMA-iX6550">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iX6560" driver="bjc-PIXMA-iX6560" manufacturer="Canon" model="4006500" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXMA-iX6560">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iX6580" driver="bjc-PIXMA-iX6580" manufacturer="Canon" model="4006500" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXMA-iX6580">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iX6500 series" driver="bjc-iX6500-series" manufacturer="Canon" model="4006500" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iX6500" driver="bjc-PIXMA-iX6500" manufacturer="Canon" model="4006500" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iX6510" driver="bjc-PIXMA-iX6510" manufacturer="Canon" model="4006500" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iX6520" driver="bjc-PIXMA-iX6520" manufacturer="Canon" model="4006500" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iX6530" driver="bjc-PIXUS-iX6530" manufacturer="Canon" model="4006500" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iX6540" driver="bjc-PIXMA-iX6540" manufacturer="Canon" model="4006500" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iX6550" driver="bjc-PIXMA-iX6550" manufacturer="Canon" model="4006500" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iX6560" driver="bjc-PIXMA-iX6560" manufacturer="Canon" model="4006500" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iX6580" driver="bjc-PIXMA-iX6580" manufacturer="Canon" model="4006500" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> <!-- Canon iX6700 family --> - <printer translate="name" name="Canon iX6700 series" driver="bjc-iX6700-series" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params" foomaticid="Canon-iX6700-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iX6770" driver="bjc-PIXMA-iX6770" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXMA-iX6770">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iX6780" driver="bjc-PIXMA-iX6780" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXMA-iX6780">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iX6700 series" driver="bjc-iX6700-series" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iX6770" driver="bjc-PIXMA-iX6770" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iX6780" driver="bjc-PIXMA-iX6780" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> <!-- Canon iX6800 family --> - <printer translate="name" name="Canon iX6800 series" driver="bjc-iX6800-series" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params" foomaticid="Canon-iX6800-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iX6810" driver="bjc-PIXMA-iX6810" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXMA-iX6810">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iX6820" driver="bjc-PIXMA-iX6820" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXMA-iX6820">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iX6830" driver="bjc-PIXUS-iX6830" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXUS-iX6830">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iX6840" driver="bjc-PIXMA-iX6840" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXMA-iX6840">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iX6850" driver="bjc-PIXMA-iX6850" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXMA-iX6850">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iX6860" driver="bjc-PIXMA-iX6860" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXMA-iX6860">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iX6870" driver="bjc-PIXMA-iX6870" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXMA-iX6870">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iX6880" driver="bjc-PIXMA-iX6880" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXMA-iX6880">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iX6800 series" driver="bjc-iX6800-series" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iX6810" driver="bjc-PIXMA-iX6810" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iX6820" driver="bjc-PIXMA-iX6820" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iX6830" driver="bjc-PIXUS-iX6830" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iX6840" driver="bjc-PIXMA-iX6840" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iX6850" driver="bjc-PIXMA-iX6850" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iX6860" driver="bjc-PIXMA-iX6860" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iX6870" driver="bjc-PIXMA-iX6870" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iX6880" driver="bjc-PIXMA-iX6880" manufacturer="Canon" model="4006800" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> <!-- Canon iX7000 family --> - <printer translate="name" name="Canon iX7000 series" driver="bjc-iX7000-series" manufacturer="Canon" model="4007000" parameters="PIXMA_iX5000_params" foomaticid="Canon-iX7000-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA iX7000" driver="bjc-PIXMA-iX7000" manufacturer="Canon" model="4007000" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXMA-iX7000">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS iX7000" driver="bjc-PIXUS-iX7000" manufacturer="Canon" model="4007000" parameters="PIXMA_iX5000_params" foomaticid="Canon-PIXUS-iX7000">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iX7000 series" driver="bjc-iX7000-series" manufacturer="Canon" model="4007000" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA iX7000" driver="bjc-PIXMA-iX7000" manufacturer="Canon" model="4007000" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS iX7000" driver="bjc-PIXUS-iX7000" manufacturer="Canon" model="4007000" parameters="PIXMA_iX5000_params">EXPERIMENTAL</printer> <!-- Canon Pro9000 family --> - <printer translate="name" name="Canon Pro9000 series" driver="bjc-Pro9000-series" manufacturer="Canon" model="7009000" parameters="PIXMA_iP4000_params" foomaticid="Canon-Pro9000-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA Pro9000" driver="bjc-PIXMA-Pro9000" manufacturer="Canon" model="7009000" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-Pro9000">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS Pro9000" driver="bjc-PIXUS-Pro9000" manufacturer="Canon" model="7009000" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-Pro9000">EXPERIMENTAL</printer> + <printer translate="name" name="Canon Pro9000 series" driver="bjc-Pro9000-series" manufacturer="Canon" model="7009000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA Pro9000" driver="bjc-PIXMA-Pro9000" manufacturer="Canon" model="7009000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS Pro9000" driver="bjc-PIXUS-Pro9000" manufacturer="Canon" model="7009000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon Pro9000 Mk.II family --> - <printer translate="name" name="Canon Pro9000 Mk.II series" deviceid="MFG:Canon;MDL:Pro9000II series;CMD:BJL,BJRaster3,BSCCe,PLI;" driver="bjc-Pro9000mk2-series" manufacturer="Canon" model="7009002" parameters="PIXMA_iP4000_params" foomaticid="Canon-Pro9000-Mk2-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA Pro9000mk2" driver="bjc-PIXMA-Pro9000mk2" manufacturer="Canon" model="7009002" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-Pro9000-Mk2">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS Pro9000mk2" driver="bjc-PIXUS-Pro9000mk2" manufacturer="Canon" model="7009002" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-Pro9000-Mk2">EXPERIMENTAL</printer> + <printer translate="name" name="Canon Pro9000 Mk.II series" deviceid="MFG:Canon;MDL:Pro9000II series;CMD:BJL,BJRaster3,BSCCe,PLI;" driver="bjc-Pro9000mk2-series" manufacturer="Canon" model="7009002" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA Pro9000mk2" driver="bjc-PIXMA-Pro9000mk2" manufacturer="Canon" model="7009002" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS Pro9000mk2" driver="bjc-PIXUS-Pro9000mk2" manufacturer="Canon" model="7009002" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon Pro9500 family --> - <printer translate="name" name="Canon Pro9500 series" driver="bjc-Pro9500-series" manufacturer="Canon" model="7009500" parameters="PIXMA_iP4000_params" foomaticid="Canon-Pro9500-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA Pro9500" driver="bjc-PIXMA-Pro9500" manufacturer="Canon" model="7009500" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-Pro9500">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS Pro9500" driver="bjc-PIXUS-Pro9500" manufacturer="Canon" model="7009500" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-Pro9500">EXPERIMENTAL</printer> + <printer translate="name" name="Canon Pro9500 series" driver="bjc-Pro9500-series" manufacturer="Canon" model="7009500" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA Pro9500" driver="bjc-PIXMA-Pro9500" manufacturer="Canon" model="7009500" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS Pro9500" driver="bjc-PIXUS-Pro9500" manufacturer="Canon" model="7009500" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon Pro9500 Mk.II family --> - <printer translate="name" name="Canon Pro9500 Mk.II series" driver="bjc-Pro9500mk2-series" manufacturer="Canon" model="7009502" parameters="PIXMA_iP4000_params" foomaticid="Canon-Pro9500-Mk2-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA Pro9500mk2" driver="bjc-PIXMA-Pro9500mk2" manufacturer="Canon" model="7009502" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-Pro9500- Mk2">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS Pro9500mk2" driver="bjc-PIXUS-Pro9500mk2" manufacturer="Canon" model="7009502" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-Pro9500-Mk2">EXPERIMENTAL</printer> + <printer translate="name" name="Canon Pro9500 Mk.II series" driver="bjc-Pro9500mk2-series" manufacturer="Canon" model="7009502" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA Pro9500mk2" driver="bjc-PIXMA-Pro9500mk2" manufacturer="Canon" model="7009502" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS Pro9500mk2" driver="bjc-PIXUS-Pro9500mk2" manufacturer="Canon" model="7009502" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MPC400 family --> - <printer translate="name" name="Canon SmartBase MPC400" driver="bjc-SmartBase-MPC400" manufacturer="Canon" model="16000400" parameters="PIXMA_iP4000_params" foomaticid="Canon-SmartBase-MPC400">EXPERIMENTAL</printer> - <printer translate="name" name="Canon SmartBase MPC600F" driver="bjc-SmartBase-MPC600F" manufacturer="Canon" model="16000400" parameters="PIXMA_iP4000_params" foomaticid="Canon-SmartBase-MPC600F">EXPERIMENTAL</printer> + <printer translate="name" name="Canon SmartBase MPC400" driver="bjc-SmartBase-MPC400" manufacturer="Canon" model="16000400" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon SmartBase MPC600F" driver="bjc-SmartBase-MPC600F" manufacturer="Canon" model="16000400" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP55 family --> - <printer translate="name" name="Canon PIXUS MP55" driver="bjc-PIXUS-MP55" manufacturer="Canon" model="5000055" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP55">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MP55" driver="bjc-PIXUS-MP55" manufacturer="Canon" model="5000055" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP140 family --> - <printer translate="name" name="Canon MP140 series" driver="bjc-MP140-series" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP140-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP140" driver="bjc-MULTIPASS-MP140" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP140">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MP145" driver="bjc-PIXMA-MP145" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP145">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP140 series" driver="bjc-MP140-series" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP140" driver="bjc-MULTIPASS-MP140" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MP145" driver="bjc-PIXMA-MP145" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP150 family --> - <printer translate="name" name="Canon MP150 series" driver="bjc-MP150-series" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP150-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP150" driver="bjc-MULTIPASS-MP150" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP150">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> + <printer translate="name" name="Canon MP150 series" driver="bjc-MP150-series" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP150" driver="bjc-MULTIPASS-MP150" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> <!-- Canon MP160 family --> - <printer translate="name" name="Canon MP160 series" deviceid="MFG:Canon;CMD:BJL,BJRaster3,BSCCe;SOJ:TXT01;MDL:MP160;CLS:PRINTER;DES:Canon MP160;VER:1.06;STA:10;HRI:OTH;" driver="bjc-MP160-series" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP160-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP160" driver="bjc-MULTIPASS-MP160" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP160">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> + <printer translate="name" name="Canon MP160 series" deviceid="MFG:Canon;CMD:BJL,BJRaster3,BSCCe;SOJ:TXT01;MDL:MP160;CLS:PRINTER;DES:Canon MP160;VER:1.06;STA:10;HRI:OTH;" driver="bjc-MP160-series" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP160" driver="bjc-MULTIPASS-MP160" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> <!-- Canon MP170 family --> - <printer translate="name" name="Canon MP170 series" driver="bjc-MP170-series" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP170-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP170" driver="bjc-MULTIPASS-MP170" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP170">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP170" driver="bjc-PIXUS-MP170" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP170">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP170 series" driver="bjc-MP170-series" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP170" driver="bjc-MULTIPASS-MP170" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP170" driver="bjc-PIXUS-MP170" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP180 family --> - <printer translate="name" name="Canon MP180 series" driver="bjc-MP180-series" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP180-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP180" driver="bjc-MULTIPASS-MP180" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP180">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> + <printer translate="name" name="Canon MP180 series" driver="bjc-MP180-series" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP180" driver="bjc-MULTIPASS-MP180" manufacturer="Canon" model="5000150" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> <!-- Canon MP190 family --> - <printer translate="name" name="Canon MP190 series" driver="bjc-MP190-series" manufacturer="Canon" model="5000190" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP190-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP190" driver="bjc-MULTIPASS-MP190" manufacturer="Canon" model="5000190" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP190">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MP198" driver="bjc-PIXMA-MP198" manufacturer="Canon" model="5000190" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP198">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP190 series" driver="bjc-MP190-series" manufacturer="Canon" model="5000190" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP190" driver="bjc-MULTIPASS-MP190" manufacturer="Canon" model="5000190" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MP198" driver="bjc-PIXMA-MP198" manufacturer="Canon" model="5000190" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP210 family --> - <printer translate="name" name="Canon MP210 series" driver="bjc-MP210-series" manufacturer="Canon" model="5000210" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP210-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP210" driver="bjc-MULTIPASS-MP210" manufacturer="Canon" model="5000210" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP210">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MP218" driver="bjc-PIXMA-MP218" manufacturer="Canon" model="5000210" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP218">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP210 series" driver="bjc-MP210-series" manufacturer="Canon" model="5000210" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP210" driver="bjc-MULTIPASS-MP210" manufacturer="Canon" model="5000210" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MP218" driver="bjc-PIXMA-MP218" manufacturer="Canon" model="5000210" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP220 family --> - <printer translate="name" name="Canon MP220 series" driver="bjc-MP220-series" manufacturer="Canon" model="5000210" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP220-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP220" driver="bjc-MULTIPASS-MP220" manufacturer="Canon" model="5000210" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP220">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MP228" driver="bjc-PIXMA-MP228" manufacturer="Canon" model="5000210" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP228">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP220 series" driver="bjc-MP220-series" manufacturer="Canon" model="5000210" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP220" driver="bjc-MULTIPASS-MP220" manufacturer="Canon" model="5000210" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MP228" driver="bjc-PIXMA-MP228" manufacturer="Canon" model="5000210" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP230 family --> - <printer translate="name" name="Canon MP230 series" driver="bjc-MP230-series" manufacturer="Canon" model="5000230" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP230-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP230" driver="bjc-MULTIPASS-MP230" manufacturer="Canon" model="5000230" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP230">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MP236" driver="bjc-PIXMA-MP236" manufacturer="Canon" model="5000230" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP236">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP237" driver="bjc-PIXMA-MP237" manufacturer="Canon" model="5000230" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP237">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP230 series" driver="bjc-MP230-series" manufacturer="Canon" model="5000230" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP230" driver="bjc-MULTIPASS-MP230" manufacturer="Canon" model="5000230" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MP236" driver="bjc-PIXMA-MP236" manufacturer="Canon" model="5000230" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP237" driver="bjc-PIXMA-MP237" manufacturer="Canon" model="5000230" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP240 family --> - <printer translate="name" name="Canon MP240 series" driver="bjc-MP240-series" manufacturer="Canon" model="5000240" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP240-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP240" driver="bjc-MULTIPASS-MP240" manufacturer="Canon" model="5000240" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP240">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MP245" driver="bjc-PIXMA-MP245" manufacturer="Canon" model="5000240" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP245">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP240 series" driver="bjc-MP240-series" manufacturer="Canon" model="5000240" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP240" driver="bjc-MULTIPASS-MP240" manufacturer="Canon" model="5000240" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MP245" driver="bjc-PIXMA-MP245" manufacturer="Canon" model="5000240" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP250 family --> - <printer translate="name" name="Canon MP250 series" deviceid="MFG:Canon;CMD:BJL,BJRaster3,BSCCe,IVEC,IVECPLI;MDL:MP250 series;DES:Canon MP250 series;" driver="bjc-MP250-series" manufacturer="Canon" model="5000250" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP250-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP250" driver="bjc-MULTIPASS-MP250" manufacturer="Canon" model="5000250" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP250">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MP252" driver="bjc-PIXMA-MP252" manufacturer="Canon" model="5000250" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP252">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP258" driver="bjc-PIXMA-MP258" manufacturer="Canon" model="5000250" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP258">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP259" driver="bjc-PIXMA-MP259" manufacturer="Canon" model="5000250" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP259">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP250 series" deviceid="MFG:Canon;CMD:BJL,BJRaster3,BSCCe,IVEC,IVECPLI;MDL:MP250 series;DES:Canon MP250 series;" driver="bjc-MP250-series" manufacturer="Canon" model="5000250" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP250" driver="bjc-MULTIPASS-MP250" manufacturer="Canon" model="5000250" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MP252" driver="bjc-PIXMA-MP252" manufacturer="Canon" model="5000250" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP258" driver="bjc-PIXMA-MP258" manufacturer="Canon" model="5000250" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP259" driver="bjc-PIXMA-MP259" manufacturer="Canon" model="5000250" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP260 family --> - <printer translate="name" name="Canon MP260 series" driver="bjc-MP260-series" manufacturer="Canon" model="5000240" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP260-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP260" driver="bjc-MULTIPASS-MP260" manufacturer="Canon" model="5000240" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP260">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MP268" driver="bjc-PIXMA-MP268" manufacturer="Canon" model="5000240" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP268">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP260 series" driver="bjc-MP260-series" manufacturer="Canon" model="5000240" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP260" driver="bjc-MULTIPASS-MP260" manufacturer="Canon" model="5000240" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MP268" driver="bjc-PIXMA-MP268" manufacturer="Canon" model="5000240" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP270 family --> - <printer translate="name" name="Canon MP270 series" driver="bjc-MP270-series" manufacturer="Canon" model="5000270" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP270-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP270" driver="bjc-MULTIPASS-MP270" manufacturer="Canon" model="5000270" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP270">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP270" driver="bjc-PIXUS-MP270" manufacturer="Canon" model="5000270" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP270">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP272" driver="bjc-PIXMA-MP272" manufacturer="Canon" model="5000270" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP272">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP276" driver="bjc-PIXMA-MP276" manufacturer="Canon" model="5000270" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP276">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP270 series" driver="bjc-MP270-series" manufacturer="Canon" model="5000270" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP270" driver="bjc-MULTIPASS-MP270" manufacturer="Canon" model="5000270" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP270" driver="bjc-PIXUS-MP270" manufacturer="Canon" model="5000270" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP272" driver="bjc-PIXMA-MP272" manufacturer="Canon" model="5000270" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP276" driver="bjc-PIXMA-MP276" manufacturer="Canon" model="5000270" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP280 family --> - <printer translate="name" name="Canon MP280 series" driver="bjc-MP280-series" manufacturer="Canon" model="5000280" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP280-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP280" deviceid="MFG:Canon;MDL:MP280 series;" driver="bjc-MULTIPASS-MP280" manufacturer="Canon" model="5000280" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP280">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP280" driver="bjc-PIXUS-MP280" manufacturer="Canon" model="5000280" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP280">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP282" driver="bjc-PIXMA-MP282" manufacturer="Canon" model="5000280" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP282">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP287" driver="bjc-PIXMA-MP287" manufacturer="Canon" model="5000280" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP287">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP288" driver="bjc-PIXMA-MP288" manufacturer="Canon" model="5000280" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP288">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP280 series" driver="bjc-MP280-series" manufacturer="Canon" model="5000280" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP280" deviceid="MFG:Canon;MDL:MP280 series;" driver="bjc-MULTIPASS-MP280" manufacturer="Canon" model="5000280" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP280" driver="bjc-PIXUS-MP280" manufacturer="Canon" model="5000280" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP282" driver="bjc-PIXMA-MP282" manufacturer="Canon" model="5000280" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP287" driver="bjc-PIXMA-MP287" manufacturer="Canon" model="5000280" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP288" driver="bjc-PIXMA-MP288" manufacturer="Canon" model="5000280" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP360 family (PIXMA MP360 does not exist) --> - <printer translate="name" name="Canon MP360 series" driver="bjc-MP360-series" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP360-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP360" driver="bjc-PIXMA-MP360" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP360">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names updated since MultiPASS entry added --> - <printer translate="name" name="Canon PIXUS MP360" driver="bjc-PIXUS-MP360" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP360">EXPERIMENTAL</printer> - <printer translate="name" name="Canon SmartBase MP360" driver="bjc-SmartBase-MP360" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-SmartBase-MP360">EXPERIMENTAL</printer> - <printer translate="name" name="Canon SmartBase MP360S" driver="bjc-SmartBase-MP360S" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-SmartBase-MP360S">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MultiPASS MP360" driver="bjc-MULTIPASS-MP360" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP360">EXPERIMENTAL</printer><!-- introduced the MultiPASS entry so changed previous PIXMA MP360 entry to reflect proper brand name --> + <printer translate="name" name="Canon MP360 series" driver="bjc-MP360-series" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP360" driver="bjc-PIXMA-MP360" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names updated since MultiPASS entry added --> + <printer translate="name" name="Canon PIXUS MP360" driver="bjc-PIXUS-MP360" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon SmartBase MP360" driver="bjc-SmartBase-MP360" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon SmartBase MP360S" driver="bjc-SmartBase-MP360S" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MultiPASS MP360" driver="bjc-MULTIPASS-MP360" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- introduced the MultiPASS entry so changed previous PIXMA MP360 entry to reflect proper brand name --> <!-- Canon MP370 family (PIXMA MP370, MP375R do not exist) --> - <printer translate="name" name="Canon MP370 series" driver="bjc-MP370-series" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP370-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP370" driver="bjc-PIXMA-MP370" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP370">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names updated since MultiPASS entry added --> - <printer translate="name" name="Canon PIXUS MP370" driver="bjc-PIXUS-MP370" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP370">EXPERIMENTAL</printer> - <printer translate="name" name="Canon SmartBase MP370" driver="bjc-SmartBase-MP370" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-SmartBase-MP370">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MultiPASS MP370" driver="bjc-MULTIPASS-MP370" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP370">EXPERIMENTAL</printer><!-- introduced the MultiPASS entry so changed previous PIXMA MP370 entry to reflect proper brand name --> - <printer translate="name" name="Canon PIXMA MP375R" driver="bjc-MULTIPASS-MP375R" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP375R">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP375R" driver="bjc-PIXUS-MP375R" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP375R">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP370 series" driver="bjc-MP370-series" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP370" driver="bjc-PIXMA-MP370" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names updated since MultiPASS entry added --> + <printer translate="name" name="Canon PIXUS MP370" driver="bjc-PIXUS-MP370" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon SmartBase MP370" driver="bjc-SmartBase-MP370" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MultiPASS MP370" driver="bjc-MULTIPASS-MP370" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- introduced the MultiPASS entry so changed previous PIXMA MP370 entry to reflect proper brand name --> + <printer translate="name" name="Canon PIXMA MP375R" driver="bjc-MULTIPASS-MP375R" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP375R" driver="bjc-PIXUS-MP375R" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP390 family (PIXMA MP390 does not exist) --> - <printer translate="name" name="Canon MP390 series" driver="bjc-MP390-series" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP390-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP390" driver="bjc-PIXMA-MP390" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP390">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names updated since MultiPASS entry added --> - <printer translate="name" name="Canon PIXUS MP390" driver="bjc-PIXUS-MP390" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP390">EXPERIMENTAL</printer> - <printer translate="name" name="Canon SmartBase MP390" driver="bjc-SmartBase-MP390" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-SmartBase-MP390">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MultiPASS MP390" driver="bjc-MULTIPASS-MP390" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP390">EXPERIMENTAL</printer><!-- introduced the MultiPASS entry so changed previous PIXMA MP390 entry to reflect proper brand name --> + <printer translate="name" name="Canon MP390 series" driver="bjc-MP390-series" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP390" driver="bjc-PIXMA-MP390" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names updated since MultiPASS entry added --> + <printer translate="name" name="Canon PIXUS MP390" driver="bjc-PIXUS-MP390" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon SmartBase MP390" driver="bjc-SmartBase-MP390" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MultiPASS MP390" driver="bjc-MULTIPASS-MP390" manufacturer="Canon" model="5000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- introduced the MultiPASS entry so changed previous PIXMA MP390 entry to reflect proper brand name --> <!-- Canon MP450 family --> - <printer translate="name" name="Canon MP450 series" deviceid="MFG:Canon;CMD:BJL,BJRaster3,BSCCe;MDL:MP450;DES:Canon MP450;CLS:PRINTER;VER:1.08;STA:10;HRI:JP;SOJ:TXT01;" driver="bjc-MP450-series" manufacturer="Canon" model="5000450" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP450-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP450" driver="bjc-MULTIPASS-MP450" manufacturer="Canon" model="5000450" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP450">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP450" driver="bjc-PIXUS-MP450" manufacturer="Canon" model="5000450" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP450">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP450 series" deviceid="MFG:Canon;CMD:BJL,BJRaster3,BSCCe;MDL:MP450;DES:Canon MP450;CLS:PRINTER;VER:1.08;STA:10;HRI:JP;SOJ:TXT01;" driver="bjc-MP450-series" manufacturer="Canon" model="5000450" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP450" driver="bjc-MULTIPASS-MP450" manufacturer="Canon" model="5000450" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP450" driver="bjc-PIXUS-MP450" manufacturer="Canon" model="5000450" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP460 family --> - <printer translate="name" name="Canon MP460 series" driver="bjc-MP460-series" manufacturer="Canon" model="5000450" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP460-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP460" driver="bjc-MULTIPASS-MP460" manufacturer="Canon" model="5000450" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP460">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP460" driver="bjc-PIXUS-MP460" manufacturer="Canon" model="5000450" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP460">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP460 series" driver="bjc-MP460-series" manufacturer="Canon" model="5000450" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP460" driver="bjc-MULTIPASS-MP460" manufacturer="Canon" model="5000450" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP460" driver="bjc-PIXUS-MP460" manufacturer="Canon" model="5000450" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP470 family --> - <printer translate="name" name="Canon MP470 series" driver="bjc-MP470-series" manufacturer="Canon" model="5000470" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP470-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP470" driver="bjc-MULTIPASS-MP470" manufacturer="Canon" model="5000470" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP470">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP470" driver="bjc-PIXUS-MP470" manufacturer="Canon" model="5000470" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP470">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP476" driver="bjc-PIXMA-MP476" manufacturer="Canon" model="5000470" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP476">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP470 series" driver="bjc-MP470-series" manufacturer="Canon" model="5000470" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP470" driver="bjc-MULTIPASS-MP470" manufacturer="Canon" model="5000470" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP470" driver="bjc-PIXUS-MP470" manufacturer="Canon" model="5000470" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP476" driver="bjc-PIXMA-MP476" manufacturer="Canon" model="5000470" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP480 family --> - <printer translate="name" name="Canon MP480 series" driver="bjc-MP480-series" manufacturer="Canon" model="5000480" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP480-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP480" driver="bjc-MULTIPASS-MP480" manufacturer="Canon" model="5000480" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP480">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP480" driver="bjc-PIXUS-MP480" manufacturer="Canon" model="5000480" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP480">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP486" driver="bjc-PIXMA-MP486" manufacturer="Canon" model="5000480" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP486">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP480 series" driver="bjc-MP480-series" manufacturer="Canon" model="5000480" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP480" driver="bjc-MULTIPASS-MP480" manufacturer="Canon" model="5000480" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP480" driver="bjc-PIXUS-MP480" manufacturer="Canon" model="5000480" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP486" driver="bjc-PIXMA-MP486" manufacturer="Canon" model="5000480" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP490 family (TODO: combine separate drivers for 493, 495. PIXMA MP493 does not exist) --> - <printer translate="name" name="Canon MP490 series" driver="bjc-MP490-series" manufacturer="Canon" model="5000490" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP490-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP490" driver="bjc-MULTIPASS-MP490" manufacturer="Canon" model="5000490" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP490">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP490" driver="bjc-PIXUS-MP490" manufacturer="Canon" model="5000490" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP490">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP492" driver="bjc-PIXMA-MP492" manufacturer="Canon" model="5000490" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP492">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP493" driver="bjc-MULTIPASS-MP493" manufacturer="Canon" model="5000493" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP493">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP493" driver="bjc-PIXUS-MP493" manufacturer="Canon" model="5000493" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP493">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP495" driver="bjc-MULTIPASS-MP495" manufacturer="Canon" model="5000495" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP495">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MP496" driver="bjc-PIXMA-MP496" manufacturer="Canon" model="5000490" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP496">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP497" driver="bjc-PIXMA-MP497" manufacturer="Canon" model="5000490" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP497">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP498" driver="bjc-PIXMA-MP498" manufacturer="Canon" model="5000490" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP498">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP499" driver="bjc-PIXMA-MP499" manufacturer="Canon" model="5000490" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP499">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP490 series" driver="bjc-MP490-series" manufacturer="Canon" model="5000490" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP490" driver="bjc-MULTIPASS-MP490" manufacturer="Canon" model="5000490" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP490" driver="bjc-PIXUS-MP490" manufacturer="Canon" model="5000490" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP492" driver="bjc-PIXMA-MP492" manufacturer="Canon" model="5000490" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP493" driver="bjc-MULTIPASS-MP493" manufacturer="Canon" model="5000493" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP493" driver="bjc-PIXUS-MP493" manufacturer="Canon" model="5000493" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP495" driver="bjc-MULTIPASS-MP495" manufacturer="Canon" model="5000495" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MP496" driver="bjc-PIXMA-MP496" manufacturer="Canon" model="5000490" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP497" driver="bjc-PIXMA-MP497" manufacturer="Canon" model="5000490" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP498" driver="bjc-PIXMA-MP498" manufacturer="Canon" model="5000490" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP499" driver="bjc-PIXMA-MP499" manufacturer="Canon" model="5000490" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP500 family --> - <printer translate="name" name="Canon MP500 series" deviceid="MFG:Canon;MDL:MP500;CMD:BJL,BJRaster3,BSCCe;" driver="bjc-MP500-series" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP500-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP500" driver="bjc-MULTIPASS-MP500" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP500">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP500" driver="bjc-PIXUS-MP500" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP500">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP500 series" deviceid="MFG:Canon;MDL:MP500;CMD:BJL,BJRaster3,BSCCe;" driver="bjc-MP500-series" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP500" driver="bjc-MULTIPASS-MP500" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP500" driver="bjc-PIXUS-MP500" manufacturer="Canon" model="3004200" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP510 family --> - <printer translate="name" name="Canon MP510 series" driver="bjc-MP510-series" manufacturer="Canon" model="5000510" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP510-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP510" driver="bjc-MULTIPASS-MP510" manufacturer="Canon" model="5000510" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP510">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP510" driver="bjc-PIXUS-MP510" manufacturer="Canon" model="5000510" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP510">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP510 series" driver="bjc-MP510-series" manufacturer="Canon" model="5000510" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP510" driver="bjc-MULTIPASS-MP510" manufacturer="Canon" model="5000510" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP510" driver="bjc-PIXUS-MP510" manufacturer="Canon" model="5000510" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP520 family --> - <printer translate="name" name="Canon MP520 series" driver="bjc-MP520-series" manufacturer="Canon" model="5000520" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP520-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP520" driver="bjc-MULTIPASS-MP520" manufacturer="Canon" model="5000520" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP520">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP520" driver="bjc-PIXUS-MP520" manufacturer="Canon" model="5000520" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP520">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP520 series" driver="bjc-MP520-series" manufacturer="Canon" model="5000520" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP520" driver="bjc-MULTIPASS-MP520" manufacturer="Canon" model="5000520" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP520" driver="bjc-PIXUS-MP520" manufacturer="Canon" model="5000520" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP530 family --> - <printer translate="name" name="Canon MP530 series" driver="bjc-MP530-series" manufacturer="Canon" model="5000530" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP530-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP530" driver="bjc-MULTIPASS-MP530" manufacturer="Canon" model="5000530" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP530">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> + <printer translate="name" name="Canon MP530 series" driver="bjc-MP530-series" manufacturer="Canon" model="5000530" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP530" driver="bjc-MULTIPASS-MP530" manufacturer="Canon" model="5000530" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> <!-- Canon MP540 family --> - <printer translate="name" name="Canon MP540 series" driver="bjc-MP540-series" manufacturer="Canon" model="5000540" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP540-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP540" driver="bjc-MULTIPASS-MP540" manufacturer="Canon" model="5000540" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP540">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP540" driver="bjc-PIXUS-MP540" manufacturer="Canon" model="5000540" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP540">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP545" driver="bjc-PIXMA-MP545" manufacturer="Canon" model="5000540" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP545">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP540 series" driver="bjc-MP540-series" manufacturer="Canon" model="5000540" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP540" driver="bjc-MULTIPASS-MP540" manufacturer="Canon" model="5000540" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP540" driver="bjc-PIXUS-MP540" manufacturer="Canon" model="5000540" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP545" driver="bjc-PIXMA-MP545" manufacturer="Canon" model="5000540" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP550 family --> - <printer translate="name" name="Canon MP550 series" driver="bjc-MP550-series" manufacturer="Canon" model="5000550" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP550-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP550" driver="bjc-MULTIPASS-MP550" manufacturer="Canon" model="5000550" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP550">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP550" driver="bjc-PIXUS-MP550" manufacturer="Canon" model="5000550" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP550">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP558" driver="bjc-PIXMA-MP558" manufacturer="Canon" model="5000550" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP558">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP550 series" driver="bjc-MP550-series" manufacturer="Canon" model="5000550" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP550" driver="bjc-MULTIPASS-MP550" manufacturer="Canon" model="5000550" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP550" driver="bjc-PIXUS-MP550" manufacturer="Canon" model="5000550" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP558" driver="bjc-PIXMA-MP558" manufacturer="Canon" model="5000550" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP560 family --> - <printer translate="name" name="Canon MP560 series" driver="bjc-MP560-series" manufacturer="Canon" model="5000560" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP560-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP560" driver="bjc-MULTIPASS-MP560" manufacturer="Canon" model="5000560" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP560">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP560" driver="bjc-PIXUS-MP560" manufacturer="Canon" model="5000560" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP560">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP568" driver="bjc-PIXMA-MP568" manufacturer="Canon" model="5000560" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP568">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP560 series" driver="bjc-MP560-series" manufacturer="Canon" model="5000560" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP560" driver="bjc-MULTIPASS-MP560" manufacturer="Canon" model="5000560" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP560" driver="bjc-PIXUS-MP560" manufacturer="Canon" model="5000560" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP568" driver="bjc-PIXMA-MP568" manufacturer="Canon" model="5000560" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP600 family --> - <printer translate="name" name="Canon MP600 series" driver="bjc-MP600-series" manufacturer="Canon" model="5000600" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP600-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP600" driver="bjc-MULTIPASS-MP600" manufacturer="Canon" model="5000600" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP600">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP600" driver="bjc-PIXUS-MP600" manufacturer="Canon" model="5000600" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP600">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP600R" driver="bjc-MULTIPASS-MP600R" manufacturer="Canon" model="5000600" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP600R">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> + <printer translate="name" name="Canon MP600 series" driver="bjc-MP600-series" manufacturer="Canon" model="5000600" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP600" driver="bjc-MULTIPASS-MP600" manufacturer="Canon" model="5000600" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP600" driver="bjc-PIXUS-MP600" manufacturer="Canon" model="5000600" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP600R" driver="bjc-MULTIPASS-MP600R" manufacturer="Canon" model="5000600" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> <!-- Canon MP610 family --> - <printer translate="name" name="Canon MP610 series" driver="bjc-MP610-series" manufacturer="Canon" model="5000610" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP610-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP610" driver="bjc-MULTIPASS-MP610" manufacturer="Canon" model="5000610" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP610">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP610" driver="bjc-PIXUS-MP610" manufacturer="Canon" model="5000610" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP610">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP610 series" driver="bjc-MP610-series" manufacturer="Canon" model="5000610" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP610" driver="bjc-MULTIPASS-MP610" manufacturer="Canon" model="5000610" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP610" driver="bjc-PIXUS-MP610" manufacturer="Canon" model="5000610" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP620 family --> - <printer translate="name" name="Canon MP620 series" driver="bjc-MP620-series" manufacturer="Canon" model="5000620" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP620-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP620" driver="bjc-MULTIPASS-MP620" manufacturer="Canon" model="5000620" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP620">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MP620B" driver="bjc-PIXMA-MP620B" manufacturer="Canon" model="5000620" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP620B">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MP620" driver="bjc-PIXUS-MP620" manufacturer="Canon" model="5000620" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP620">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP628" driver="bjc-PIXMA-MP628" manufacturer="Canon" model="5000620" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP628">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP620 series" driver="bjc-MP620-series" manufacturer="Canon" model="5000620" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP620" driver="bjc-MULTIPASS-MP620" manufacturer="Canon" model="5000620" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MP620B" driver="bjc-PIXMA-MP620B" manufacturer="Canon" model="5000620" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MP620" driver="bjc-PIXUS-MP620" manufacturer="Canon" model="5000620" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP628" driver="bjc-PIXMA-MP628" manufacturer="Canon" model="5000620" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP630 family --> - <printer translate="name" name="Canon MP630 series" driver="bjc-MP630-series" manufacturer="Canon" model="5000630" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP630-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP630" driver="bjc-MULTIPASS-MP630" manufacturer="Canon" model="5000630" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP630">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP630" driver="bjc-PIXUS-MP630" manufacturer="Canon" model="5000630" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP630">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP638" driver="bjc-PIXMA-MP638" manufacturer="Canon" model="5000630" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP638">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP630 series" driver="bjc-MP630-series" manufacturer="Canon" model="5000630" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP630" driver="bjc-MULTIPASS-MP630" manufacturer="Canon" model="5000630" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP630" driver="bjc-PIXUS-MP630" manufacturer="Canon" model="5000630" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP638" driver="bjc-PIXMA-MP638" manufacturer="Canon" model="5000630" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP640 family --> - <printer translate="name" name="Canon MP640 series" driver="bjc-MP640-series" manufacturer="Canon" model="5000640" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP640-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP640" driver="bjc-MULTIPASS-MP640" manufacturer="Canon" model="5000640" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP640">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MP640R" driver="bjc-PIXMA-MP640R" manufacturer="Canon" model="5000640" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP640R">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MP640" driver="bjc-PIXUS-MP640" manufacturer="Canon" model="5000640" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP640">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP648" driver="bjc-PIXMA-MP648" manufacturer="Canon" model="5000640" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP648">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP640 series" driver="bjc-MP640-series" manufacturer="Canon" model="5000640" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP640" driver="bjc-MULTIPASS-MP640" manufacturer="Canon" model="5000640" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MP640R" driver="bjc-PIXMA-MP640R" manufacturer="Canon" model="5000640" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MP640" driver="bjc-PIXUS-MP640" manufacturer="Canon" model="5000640" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP648" driver="bjc-PIXMA-MP648" manufacturer="Canon" model="5000640" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP700 family --> - <printer translate="name" name="Canon MP700 series" driver="bjc-MP700-series" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP700-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP700" driver="bjc-PIXMA-MP700" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP700">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names updated since MultiPASS entry added --> - <printer translate="name" name="Canon PIXUS MP700" driver="bjc-PIXUS-MP700" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP700">EXPERIMENTAL</printer> - <printer translate="name" name="Canon SmartBase MP700" driver="bjc-SmartBase-MP700" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params" foomaticid="Canon-SmartBase-MP700">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MultiPASS MP700" driver="bjc-MULTIPASS-MP700" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP700">EXPERIMENTAL</printer><!-- introduced the MultiPASS entry so changed previous PIXMA MP700 entry to reflect proper brand name --> + <printer translate="name" name="Canon MP700 series" driver="bjc-MP700-series" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP700" driver="bjc-PIXMA-MP700" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names updated since MultiPASS entry added --> + <printer translate="name" name="Canon PIXUS MP700" driver="bjc-PIXUS-MP700" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon SmartBase MP700" driver="bjc-SmartBase-MP700" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MultiPASS MP700" driver="bjc-MULTIPASS-MP700" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- introduced the MultiPASS entry so changed previous PIXMA MP700 entry to reflect proper brand name --> <!-- Canon MP710 family (PIXMA MP710 does not exit) --> - <printer translate="name" name="Canon MP710 series" driver="bjc-MP710-series" manufacturer="Canon" model="5000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP710-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP710" driver="bjc-MULTIPASS-MP710" manufacturer="Canon" model="5000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP710">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP710" driver="bjc-PIXUS-MP710" manufacturer="Canon" model="5000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP710">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP710 series" driver="bjc-MP710-series" manufacturer="Canon" model="5000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP710" driver="bjc-MULTIPASS-MP710" manufacturer="Canon" model="5000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP710" driver="bjc-PIXUS-MP710" manufacturer="Canon" model="5000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP730 family --> - <printer translate="name" name="Canon MP730 series" driver="bjc-MP730-series" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP730-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP730" driver="bjc-PIXMA-MP730" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP730">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names updated since MultiPASS entry added --> - <printer translate="name" name="Canon PIXUS MP730" driver="bjc-PIXUS-MP730" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP730">EXPERIMENTAL</printer> - <printer translate="name" name="Canon SmartBase MP730" driver="bjc-SmartBasw-MP730" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params" foomaticid="Canon-SmartBase-MP730">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MultiPASS MP730" driver="bjc-MULTIPASS-MP730" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP730">EXPERIMENTAL</printer><!-- introduced the MultiPASS entry so changed previous PIXMA MP730 entry to reflect proper brand name --> + <printer translate="name" name="Canon MP730 series" driver="bjc-MP730-series" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP730" driver="bjc-PIXMA-MP730" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names updated since MultiPASS entry added --> + <printer translate="name" name="Canon PIXUS MP730" driver="bjc-PIXUS-MP730" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon SmartBase MP730" driver="bjc-SmartBasw-MP730" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MultiPASS MP730" driver="bjc-MULTIPASS-MP730" manufacturer="Canon" model="5000700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- introduced the MultiPASS entry so changed previous PIXMA MP730 entry to reflect proper brand name --> <!-- Canon MP740 family (PIXMA MP740 does not exit) --> - <printer translate="name" name="Canon MP740 series" driver="bjc-MP740-series" manufacturer="Canon" model="5000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP740-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP740" driver="bjc-MULTIPASS-MP740" manufacturer="Canon" model="5000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP740">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP740" driver="bjc-PIXUS-MP740" manufacturer="Canon" model="5000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP740">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP740 series" driver="bjc-MP740-series" manufacturer="Canon" model="5000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP740" driver="bjc-MULTIPASS-MP740" manufacturer="Canon" model="5000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP740" driver="bjc-PIXUS-MP740" manufacturer="Canon" model="5000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP750 family --> - <printer translate="name" name="Canon MP750 series" driver="bjc-MP750-series" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP750-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP750" driver="bjc-MULTIPASS-MP750" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP750">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> + <printer translate="name" name="Canon MP750 series" driver="bjc-MP750-series" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP750" driver="bjc-MULTIPASS-MP750" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> <!-- Canon MP760 family --> - <printer translate="name" name="Canon MP760 series" driver="bjc-MULTIPASS-MP760-series" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP760-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP760" driver="bjc-MULTIPASS-MP760" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP760">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> + <printer translate="name" name="Canon MP760 series" driver="bjc-MULTIPASS-MP760-series" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP760" driver="bjc-MULTIPASS-MP760" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> <!-- Canon MP770 family (PIXMA MP770 does not exist) --> - <printer translate="name" name="Canon MP770 series" driver="bjc-MULTIPASS-MP770-series" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP770-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP770" driver="bjc-MULTIPASS-MP770" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP770">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP770" driver="bjc-PIXUS-MP770" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP770">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP770 series" driver="bjc-MULTIPASS-MP770-series" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP770" driver="bjc-MULTIPASS-MP770" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP770" driver="bjc-PIXUS-MP770" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP780 family --> - <printer translate="name" name="Canon MP780 series" driver="bjc-MP780-series" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP780-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP780" driver="bjc-MULTIPASS-MP780" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP780">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> + <printer translate="name" name="Canon MP780 series" driver="bjc-MP780-series" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP780" driver="bjc-MULTIPASS-MP780" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> <!-- Canon MP790 family (PIXMA MP790 does not exist) --> - <printer translate="name" name="Canon MP790 series" driver="bjc-MP790-series" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP790-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP790" driver="bjc-MULTIPASS-MP790" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP790">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP790" driver="bjc-PIXUS-MP790" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP790">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP790 series" driver="bjc-MP790-series" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP790" driver="bjc-MULTIPASS-MP790" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP790" driver="bjc-PIXUS-MP790" manufacturer="Canon" model="5000750" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP800 family --> - <printer translate="name" name="Canon MP800 series" driver="bjc-MP800-series" manufacturer="Canon" model="5000800" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP800-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP800" driver="bjc-MULTIPASS-MP800" manufacturer="Canon" model="5000800" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP800">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP800" driver="bjc-PIXUS-MP800" manufacturer="Canon" model="5000800" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP800">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP800R" driver="bjc-MULTIPASS-MP800R" manufacturer="Canon" model="5000800" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP800R">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> + <printer translate="name" name="Canon MP800 series" driver="bjc-MP800-series" manufacturer="Canon" model="5000800" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP800" driver="bjc-MULTIPASS-MP800" manufacturer="Canon" model="5000800" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP800" driver="bjc-PIXUS-MP800" manufacturer="Canon" model="5000800" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP800R" driver="bjc-MULTIPASS-MP800R" manufacturer="Canon" model="5000800" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> <!-- Canon MP810 family --> - <printer translate="name" name="Canon MP810 series" driver="bjc-MP810-series" manufacturer="Canon" model="5000810" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP810-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP810" driver="bjc-MULTIPASS-MP810" manufacturer="Canon" model="5000810" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP810">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP810" driver="bjc-PIXUS-MP810" manufacturer="Canon" model="5000810" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP810">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP810 series" driver="bjc-MP810-series" manufacturer="Canon" model="5000810" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP810" driver="bjc-MULTIPASS-MP810" manufacturer="Canon" model="5000810" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP810" driver="bjc-PIXUS-MP810" manufacturer="Canon" model="5000810" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP830 family --> - <printer translate="name" name="Canon MP830 series" driver="bjc-MP830-series" manufacturer="Canon" model="5000830" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP830-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP830" driver="bjc-MULTIPASS-MP830" manufacturer="Canon" model="5000830" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP830">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP830" driver="bjc-PIXUS-MP830" manufacturer="Canon" model="5000830" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP830">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP830 series" driver="bjc-MP830-series" manufacturer="Canon" model="5000830" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP830" driver="bjc-MULTIPASS-MP830" manufacturer="Canon" model="5000830" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP830" driver="bjc-PIXUS-MP830" manufacturer="Canon" model="5000830" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP900 family --> - <printer translate="name" name="Canon MP900 series" driver="bjc-MP900-series" manufacturer="Canon" model="5000900" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP900-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP900" driver="bjc-MULTIPASS-MP900" manufacturer="Canon" model="5000900" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP900">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP900" driver="bjc-PIXUS-MP900" manufacturer="Canon" model="5000900" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP900">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP900 series" driver="bjc-MP900-series" manufacturer="Canon" model="5000900" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP900" driver="bjc-MULTIPASS-MP900" manufacturer="Canon" model="5000900" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP900" driver="bjc-PIXUS-MP900" manufacturer="Canon" model="5000900" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP950 family --> - <printer translate="name" name="Canon MP950 series" driver="bjc-MP950-series" manufacturer="Canon" model="5000950" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP950-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP950" driver="bjc-MULTIPASS-MP950" manufacturer="Canon" model="5000950" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP950">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP950" driver="bjc-PIXUS-MP950" manufacturer="Canon" model="5000950" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP950">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP950 series" driver="bjc-MP950-series" manufacturer="Canon" model="5000950" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP950" driver="bjc-MULTIPASS-MP950" manufacturer="Canon" model="5000950" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP950" driver="bjc-PIXUS-MP950" manufacturer="Canon" model="5000950" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP960 family --> - <printer translate="name" name="Canon MP960 series" driver="bjc-MP960-series" manufacturer="Canon" model="5000960" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP960-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP960" driver="bjc-MULTIPASS-MP960" manufacturer="Canon" model="5000960" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP960">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP960" driver="bjc-PIXUS-MP960" manufacturer="Canon" model="5000960" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP960">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP960 series" driver="bjc-MP960-series" manufacturer="Canon" model="5000960" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP960" driver="bjc-MULTIPASS-MP960" manufacturer="Canon" model="5000960" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP960" driver="bjc-PIXUS-MP960" manufacturer="Canon" model="5000960" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP970 family --> - <printer translate="name" name="Canon MP970 series" driver="bjc-MP970-series" manufacturer="Canon" model="5000970" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP970-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP970" driver="bjc-MULTIPASS-MP970" manufacturer="Canon" model="5000970" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP970">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP970" driver="bjc-PIXUS-MP970" manufacturer="Canon" model="5000970" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP970">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP970 series" driver="bjc-MP970-series" manufacturer="Canon" model="5000970" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP970" driver="bjc-MULTIPASS-MP970" manufacturer="Canon" model="5000970" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP970" driver="bjc-PIXUS-MP970" manufacturer="Canon" model="5000970" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP980 family --> - <printer translate="name" name="Canon MP980 series" driver="bjc-MP980-series" manufacturer="Canon" model="5000980" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP980-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP980" driver="bjc-MULTIPASS-MP980" manufacturer="Canon" model="5000980" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP980">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP980" driver="bjc-PIXUS-MP980" manufacturer="Canon" model="5000980" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP980">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP988" driver="bjc-PIXMA-MP988" manufacturer="Canon" model="5000980" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP988">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP980 series" driver="bjc-MP980-series" manufacturer="Canon" model="5000980" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP980" driver="bjc-MULTIPASS-MP980" manufacturer="Canon" model="5000980" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP980" driver="bjc-PIXUS-MP980" manufacturer="Canon" model="5000980" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP988" driver="bjc-PIXMA-MP988" manufacturer="Canon" model="5000980" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MP990 family --> - <printer translate="name" name="Canon MP990 series" driver="bjc-MP990-series" manufacturer="Canon" model="5000990" parameters="PIXMA_iP4000_params" foomaticid="Canon-MP990-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP990" driver="bjc-MULTIPASS-MP990" manufacturer="Canon" model="5000990" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MP990">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MP990" driver="bjc-PIXUS-MP990" manufacturer="Canon" model="5000990" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MP990">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MP996" driver="bjc-PIXMA-MP996" manufacturer="Canon" model="5000990" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MP996">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MP990 series" driver="bjc-MP990-series" manufacturer="Canon" model="5000990" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP990" driver="bjc-MULTIPASS-MP990" manufacturer="Canon" model="5000990" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MP990" driver="bjc-PIXUS-MP990" manufacturer="Canon" model="5000990" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MP996" driver="bjc-PIXMA-MP996" manufacturer="Canon" model="5000990" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MG2100 family --> - <printer translate="name" name="Canon MG2100 series" driver="bjc-MG2100-series" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG2100-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG2100" driver="bjc-PIXMA-MG2100" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2100">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG2110" driver="bjc-PIXMA-MG2110" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2110">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG2120" driver="bjc-PIXMA-MG2120" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2120">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG2130" driver="bjc-PIXUS-MG2130" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG2130">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG2140" driver="bjc-PIXMA-MG2140" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2140">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG2150" driver="bjc-PIXMA-MG2150" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2150">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG2160" driver="bjc-PIXMA-MG2160" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2160">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG2170" driver="bjc-PIXMA-MG2170" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2170">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG2180" driver="bjc-PIXMA-MG2180" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2180">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG2100 series" driver="bjc-MG2100-series" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG2100" driver="bjc-PIXMA-MG2100" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG2110" driver="bjc-PIXMA-MG2110" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG2120" driver="bjc-PIXMA-MG2120" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG2130" driver="bjc-PIXUS-MG2130" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG2140" driver="bjc-PIXMA-MG2140" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG2150" driver="bjc-PIXMA-MG2150" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG2160" driver="bjc-PIXMA-MG2160" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG2170" driver="bjc-PIXMA-MG2170" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG2180" driver="bjc-PIXMA-MG2180" manufacturer="Canon" model="8002100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG2200 family --> - <printer translate="name" name="Canon MG2200 series" driver="bjc-MG2200-series" manufacturer="Canon" model="8002200" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG2200-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG2210" driver="bjc-PIXMA-MG2210" manufacturer="Canon" model="8002200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2210">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG2220" driver="bjc-PIXMA-MG2220" manufacturer="Canon" model="8002200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2220">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG2240" driver="bjc-PIXMA-MG2240" manufacturer="Canon" model="8002200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2240">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG2250" driver="bjc-PIXMA-MG2250" manufacturer="Canon" model="8002200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2250">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG2260" driver="bjc-PIXMA-MG2260" manufacturer="Canon" model="8002200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2260">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG2270" driver="bjc-PIXMA-MG2270" manufacturer="Canon" model="8002200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2270">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG2280" driver="bjc-PIXMA-MG2280" manufacturer="Canon" model="8002200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2280">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG2200 series" driver="bjc-MG2200-series" manufacturer="Canon" model="8002200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG2210" driver="bjc-PIXMA-MG2210" manufacturer="Canon" model="8002200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG2220" driver="bjc-PIXMA-MG2220" manufacturer="Canon" model="8002200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG2240" driver="bjc-PIXMA-MG2240" manufacturer="Canon" model="8002200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG2250" driver="bjc-PIXMA-MG2250" manufacturer="Canon" model="8002200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG2260" driver="bjc-PIXMA-MG2260" manufacturer="Canon" model="8002200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG2270" driver="bjc-PIXMA-MG2270" manufacturer="Canon" model="8002200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG2280" driver="bjc-PIXMA-MG2280" manufacturer="Canon" model="8002200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG2400 family --> - <printer translate="name" name="Canon MG2400 series" driver="bjc-MG2400-series" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG2400-series">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2400" driver="bjc-PIXMA-MG2400" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2400">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2410" driver="bjc-PIXMA-MG2410" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2410">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2420" driver="bjc-PIXMA-MG2420" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2420">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2440" driver="bjc-PIXMA-MG2440" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2440">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2450" driver="bjc-PIXMA-MG2450" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2450">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2460" driver="bjc-PIXMA-MG2460" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2460">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2470" driver="bjc-PIXMA-MG2470" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2470">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2490" driver="bjc-PIXMA-MG2490" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2490">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon MG2400 series" driver="bjc-MG2400-series" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2400" driver="bjc-PIXMA-MG2400" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2410" driver="bjc-PIXMA-MG2410" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2420" driver="bjc-PIXMA-MG2420" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2440" driver="bjc-PIXMA-MG2440" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2450" driver="bjc-PIXMA-MG2450" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2460" driver="bjc-PIXMA-MG2460" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2470" driver="bjc-PIXMA-MG2470" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2490" driver="bjc-PIXMA-MG2490" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> <!-- Canon MG2500 family --> - <printer translate="name" name="Canon MG2500 series" driver="bjc-MG2500-series" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG2500-series">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2510" driver="bjc-PIXMA-MG2510" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2510">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2520" driver="bjc-PIXMA-MG2520" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2520">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2540" driver="bjc-PIXMA-MG2540" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2540">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2550" driver="bjc-PIXMA-MG2550" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2550">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2560" driver="bjc-PIXMA-MG2560" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2560">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2570" driver="bjc-PIXMA-MG2570" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2570">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2570S" driver="bjc-PIXMA-MG2570S" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2570S">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2580" driver="bjc-PIXMA-MG2580" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2580">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2580S" driver="bjc-PIXMA-MG2580S" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2580S">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2590" driver="bjc-PIXMA-MG2590" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2590">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon MG2500 series" driver="bjc-MG2500-series" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2510" driver="bjc-PIXMA-MG2510" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2520" driver="bjc-PIXMA-MG2520" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2540" driver="bjc-PIXMA-MG2540" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2550" driver="bjc-PIXMA-MG2550" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2560" driver="bjc-PIXMA-MG2560" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2570" driver="bjc-PIXMA-MG2570" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2570S" driver="bjc-PIXMA-MG2570S" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2580" driver="bjc-PIXMA-MG2580" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2580S" driver="bjc-PIXMA-MG2580S" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2590" driver="bjc-PIXMA-MG2590" manufacturer="Canon" model="8002400" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> <!-- Canon MG2900 family --> - <printer translate="name" name="Canon MG2900 series" driver="bjc-MG2900-series" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG2900-series">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2910" driver="bjc-PIXMA-MG2910" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2910">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2920" driver="bjc-PIXMA-MG2920" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2920">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2922" driver="bjc-PIXMA-MG2922" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2922">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2924" driver="bjc-PIXMA-MG2924" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2924">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2940" driver="bjc-PIXMA-MG2940" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2940">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2950" driver="bjc-PIXMA-MG2950" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2950">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2960" driver="bjc-PIXMA-MG2960" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2960">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2970" driver="bjc-PIXMA-MG2970" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2970">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2980" driver="bjc-PIXMA-MG2980" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2980">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> - <printer translate="name" name="Canon PIXMA MG2990" driver="bjc-PIXMA-MG2990" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG2990">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon MG2900 series" driver="bjc-MG2900-series" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2910" driver="bjc-PIXMA-MG2910" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2920" driver="bjc-PIXMA-MG2920" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2922" driver="bjc-PIXMA-MG2922" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2924" driver="bjc-PIXMA-MG2924" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2940" driver="bjc-PIXMA-MG2940" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2950" driver="bjc-PIXMA-MG2950" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2960" driver="bjc-PIXMA-MG2960" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2970" driver="bjc-PIXMA-MG2970" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2980" driver="bjc-PIXMA-MG2980" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> + <printer translate="name" name="Canon PIXMA MG2990" driver="bjc-PIXMA-MG2990" manufacturer="Canon" model="8002900" parameters="PIXMA_iP4300_params">EXPERIMENTAL; Only supports plain, photo paper gloss gold, photo paper gloss, and envelope; unconfirmed whether other media will work</printer> <!-- Canon MG3100 family --> - <printer translate="name" name="Canon MG3100 series" driver="bjc-MG3100-series" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG3100-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3100" driver="bjc-PIXMA-MG3100" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3100">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3110" driver="bjc-PIXMA-MG3110" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3110">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3120" driver="bjc-PIXMA-MG3120" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3120">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3122" driver="bjc-PIXMA-MG3122" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3122">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG3130" driver="bjc-PIXUS-MG3130" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG3130">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3140" driver="bjc-PIXMA-MG3140" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3140">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3150" driver="bjc-PIXMA-MG3150" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3150">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3160" driver="bjc-PIXMA-MG3160" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3160">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3170" driver="bjc-PIXMA-MG3170" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3170">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3180" driver="bjc-PIXMA-MG3180" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3180">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG3100 series" driver="bjc-MG3100-series" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3100" driver="bjc-PIXMA-MG3100" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3110" driver="bjc-PIXMA-MG3110" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3120" driver="bjc-PIXMA-MG3120" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3122" driver="bjc-PIXMA-MG3122" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG3130" driver="bjc-PIXUS-MG3130" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3140" driver="bjc-PIXMA-MG3140" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3150" driver="bjc-PIXMA-MG3150" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3160" driver="bjc-PIXMA-MG3160" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3170" driver="bjc-PIXMA-MG3170" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3180" driver="bjc-PIXMA-MG3180" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG3200 family --> - <printer translate="name" name="Canon MG3200 series" driver="bjc-MG3200-series" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG3200-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3210" driver="bjc-PIXMA-MG3210" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3210">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3220" driver="bjc-PIXMA-MG3220" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3220">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3222" driver="bjc-PIXMA-MG3222" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3222">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG3230" driver="bjc-PIXUS-MG3230" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG3230">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3240" driver="bjc-PIXMA-MG3240" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3240">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3250" driver="bjc-PIXMA-MG3250" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3250">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3260" driver="bjc-PIXMA-MG3260" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3260">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3270" driver="bjc-PIXMA-MG3270" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3270">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG3200 series" driver="bjc-MG3200-series" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3210" driver="bjc-PIXMA-MG3210" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3220" driver="bjc-PIXMA-MG3220" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3222" driver="bjc-PIXMA-MG3222" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG3230" driver="bjc-PIXUS-MG3230" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3240" driver="bjc-PIXMA-MG3240" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3250" driver="bjc-PIXMA-MG3250" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3260" driver="bjc-PIXMA-MG3260" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3270" driver="bjc-PIXMA-MG3270" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG3500 family --> - <printer translate="name" name="Canon MG3500 series" driver="bjc-MG3500-series" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG3500-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3510" driver="bjc-PIXMA-MG3510" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3510">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3520" driver="bjc-PIXMA-MG3520" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3520">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3522" driver="bjc-PIXMA-MG3522" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3522">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG3530" driver="bjc-PIXUS-MG3530" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG3530">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3540" driver="bjc-PIXMA-MG3540" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3540">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3550" driver="bjc-PIXMA-MG3550" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3550">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3560" driver="bjc-PIXMA-MG3560" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3560">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3570" driver="bjc-PIXMA-MG3570" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3570">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3580" driver="bjc-PIXMA-MG3580" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3580">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG3500 series" driver="bjc-MG3500-series" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3510" driver="bjc-PIXMA-MG3510" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3520" driver="bjc-PIXMA-MG3520" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3522" driver="bjc-PIXMA-MG3522" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG3530" driver="bjc-PIXUS-MG3530" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3540" driver="bjc-PIXMA-MG3540" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3550" driver="bjc-PIXMA-MG3550" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3560" driver="bjc-PIXMA-MG3560" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3570" driver="bjc-PIXMA-MG3570" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3580" driver="bjc-PIXMA-MG3580" manufacturer="Canon" model="8003500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG3600 family --> - <printer translate="name" name="Canon MG3600 series" driver="bjc-MG3600-series" manufacturer="Canon" model="8003600" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG3600-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3610" driver="bjc-PIXMA-MG3610" manufacturer="Canon" model="8003600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3610">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3620" driver="bjc-PIXMA-MG3620" manufacturer="Canon" model="8003600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3620">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG3630" driver="bjc-PIXUS-MG3630" manufacturer="Canon" model="8003600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG3630">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3640" driver="bjc-PIXMA-MG3640" manufacturer="Canon" model="8003600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3640">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3650" driver="bjc-PIXMA-MG3650" manufacturer="Canon" model="8003600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3650">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3670" driver="bjc-PIXMA-MG3670" manufacturer="Canon" model="8003600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3670">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG3680" driver="bjc-PIXMA-MG3680" manufacturer="Canon" model="8003600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG3680">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG3600 series" driver="bjc-MG3600-series" manufacturer="Canon" model="8003600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3610" driver="bjc-PIXMA-MG3610" manufacturer="Canon" model="8003600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3620" driver="bjc-PIXMA-MG3620" manufacturer="Canon" model="8003600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG3630" driver="bjc-PIXUS-MG3630" manufacturer="Canon" model="8003600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3640" driver="bjc-PIXMA-MG3640" manufacturer="Canon" model="8003600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3650" driver="bjc-PIXMA-MG3650" manufacturer="Canon" model="8003600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3670" driver="bjc-PIXMA-MG3670" manufacturer="Canon" model="8003600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG3680" driver="bjc-PIXMA-MG3680" manufacturer="Canon" model="8003600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG4100 family --> - <printer translate="name" name="Canon MG4100 series" driver="bjc-MG4100-series" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG4100-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG4100" driver="bjc-PIXMA-MG4100" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG4100">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG4110" driver="bjc-PIXMA-MG4110" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG4110">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG4120" driver="bjc-PIXMA-MG4120" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG4120">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG4130" driver="bjc-PIXUS-MG4130" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG4130">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG4140" driver="bjc-PIXMA-MG4140" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG4140">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG4150" driver="bjc-PIXMA-MG4150" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG4150">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG4160" driver="bjc-PIXMA-MG4160" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG4160">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG4170" driver="bjc-PIXMA-MG4170" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG4170">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG4180" driver="bjc-PIXMA-MG4180" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG4180">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG4100 series" driver="bjc-MG4100-series" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG4100" driver="bjc-PIXMA-MG4100" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG4110" driver="bjc-PIXMA-MG4110" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG4120" driver="bjc-PIXMA-MG4120" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG4130" driver="bjc-PIXUS-MG4130" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG4140" driver="bjc-PIXMA-MG4140" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG4150" driver="bjc-PIXMA-MG4150" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG4160" driver="bjc-PIXMA-MG4160" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG4170" driver="bjc-PIXMA-MG4170" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG4180" driver="bjc-PIXMA-MG4180" manufacturer="Canon" model="8003100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG4200 family --> - <printer translate="name" name="Canon MG4200 series" driver="bjc-MG4200-series" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG4200-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG4210" driver="bjc-PIXMA-MG4210" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG4210">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG4220" driver="bjc-PIXMA-MG4220" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG4220">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG4230" driver="bjc-PIXUS-MG4230" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG4230">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG4240" driver="bjc-PIXMA-MG4240" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG4240">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG4250" driver="bjc-PIXMA-MG4250" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG4250">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG4260" driver="bjc-PIXMA-MG4260" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG4260">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG4270" driver="bjc-PIXMA-MG4270" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG4270">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG4280" driver="bjc-PIXMA-MG4280" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG4280">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG4200 series" driver="bjc-MG4200-series" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG4210" driver="bjc-PIXMA-MG4210" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG4220" driver="bjc-PIXMA-MG4220" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG4230" driver="bjc-PIXUS-MG4230" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG4240" driver="bjc-PIXMA-MG4240" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG4250" driver="bjc-PIXMA-MG4250" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG4260" driver="bjc-PIXMA-MG4260" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG4270" driver="bjc-PIXMA-MG4270" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG4280" driver="bjc-PIXMA-MG4280" manufacturer="Canon" model="8003200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG5100 family --> - <printer translate="name" name="Canon MG5100 series" driver="bjc-MG5100-series" manufacturer="Canon" model="8005100" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG5100-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5100" driver="bjc-PIXMA-MG5100" manufacturer="Canon" model="8005100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5100">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5120" driver="bjc-PIXMA-MG5120" manufacturer="Canon" model="8005100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5120">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG5130" driver="bjc-PIXUS-MG5130" manufacturer="Canon" model="8005100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG5130">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5140" driver="bjc-PIXMA-MG5140" manufacturer="Canon" model="8005100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5140">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5150" driver="bjc-PIXMA-MG5150" manufacturer="Canon" model="8005100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5150">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5170" driver="bjc-PIXMA-MG5170" manufacturer="Canon" model="8005100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5170">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5180" driver="bjc-PIXMA-MG5180" manufacturer="Canon" model="8005100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5180">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG5100 series" driver="bjc-MG5100-series" manufacturer="Canon" model="8005100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5100" driver="bjc-PIXMA-MG5100" manufacturer="Canon" model="8005100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5120" driver="bjc-PIXMA-MG5120" manufacturer="Canon" model="8005100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG5130" driver="bjc-PIXUS-MG5130" manufacturer="Canon" model="8005100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5140" driver="bjc-PIXMA-MG5140" manufacturer="Canon" model="8005100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5150" driver="bjc-PIXMA-MG5150" manufacturer="Canon" model="8005100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5170" driver="bjc-PIXMA-MG5170" manufacturer="Canon" model="8005100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5180" driver="bjc-PIXMA-MG5180" manufacturer="Canon" model="8005100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG5200 family --> - <printer translate="name" name="Canon MG5200 series" driver="bjc-MG5200-series" manufacturer="Canon" model="8005200" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG5200-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5200" driver="bjc-PIXMA-MG5200" manufacturer="Canon" model="8005200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5200">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5210" driver="bjc-PIXMA-MG5210" manufacturer="Canon" model="8005200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5210">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5220" driver="bjc-PIXMA-MG5220" manufacturer="Canon" model="8005200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5220">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG5230" driver="bjc-PIXUS-MG5230" manufacturer="Canon" model="8005200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG5230">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5240" driver="bjc-PIXMA-MG5240" manufacturer="Canon" model="8005200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5240">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5250" driver="bjc-PIXMA-MG5250" manufacturer="Canon" model="8005200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5250">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5270" driver="bjc-PIXMA-MG5270" manufacturer="Canon" model="8005200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5270">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5280" driver="bjc-PIXMA-MG5280" manufacturer="Canon" model="8005200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5280">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG5200 series" driver="bjc-MG5200-series" manufacturer="Canon" model="8005200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5200" driver="bjc-PIXMA-MG5200" manufacturer="Canon" model="8005200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5210" driver="bjc-PIXMA-MG5210" manufacturer="Canon" model="8005200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5220" driver="bjc-PIXMA-MG5220" manufacturer="Canon" model="8005200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG5230" driver="bjc-PIXUS-MG5230" manufacturer="Canon" model="8005200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5240" driver="bjc-PIXMA-MG5240" manufacturer="Canon" model="8005200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5250" driver="bjc-PIXMA-MG5250" manufacturer="Canon" model="8005200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5270" driver="bjc-PIXMA-MG5270" manufacturer="Canon" model="8005200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5280" driver="bjc-PIXMA-MG5280" manufacturer="Canon" model="8005200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG5300 family --> - <printer translate="name" name="Canon MG5300 series" driver="bjc-MG5300-series" manufacturer="Canon" model="8005300" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG5300-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5300" driver="bjc-PIXMA-MG5300" manufacturer="Canon" model="8005300" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5300">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5310" driver="bjc-PIXMA-MG5310" manufacturer="Canon" model="8005300" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5310">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5320" driver="bjc-PIXMA-MG5320" manufacturer="Canon" model="8005300" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5320">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG5330" driver="bjc-PIXUS-MG5330" manufacturer="Canon" model="8005300" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG5330">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5340" driver="bjc-PIXMA-MG5340" manufacturer="Canon" model="8005300" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5340">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5350" driver="bjc-PIXMA-MG5350" manufacturer="Canon" model="8005300" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5350">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5370" driver="bjc-PIXMA-MG5370" manufacturer="Canon" model="8005300" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5370">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5380" driver="bjc-PIXMA-MG5380" manufacturer="Canon" model="8005300" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5380">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG5300 series" driver="bjc-MG5300-series" manufacturer="Canon" model="8005300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5300" driver="bjc-PIXMA-MG5300" manufacturer="Canon" model="8005300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5310" driver="bjc-PIXMA-MG5310" manufacturer="Canon" model="8005300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5320" driver="bjc-PIXMA-MG5320" manufacturer="Canon" model="8005300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG5330" driver="bjc-PIXUS-MG5330" manufacturer="Canon" model="8005300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5340" driver="bjc-PIXMA-MG5340" manufacturer="Canon" model="8005300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5350" driver="bjc-PIXMA-MG5350" manufacturer="Canon" model="8005300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5370" driver="bjc-PIXMA-MG5370" manufacturer="Canon" model="8005300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5380" driver="bjc-PIXMA-MG5380" manufacturer="Canon" model="8005300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG5400 family --> - <printer translate="name" name="Canon MG5400 series" deviceid="MFG:Canon;MDL:MG5400 series;CMD:URF;" driver="bjc-MG5400-series" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG5400-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5410" driver="bjc-PIXMA-MG5410" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5410">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5420" driver="bjc-PIXMA-MG5420" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5420">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5422" driver="bjc-PIXMA-MG5422" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5422">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG5430" driver="bjc-PIXUS-MG5430" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG5430">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5440" driver="bjc-PIXMA-MG5440" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5440">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5450" driver="bjc-PIXMA-MG5450" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5450">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5460" driver="bjc-PIXMA-MG5460" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5460">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5470" driver="bjc-PIXMA-MG5470" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5470">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5480" driver="bjc-PIXMA-MG5480" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5480">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG5400 series" deviceid="MFG:Canon;MDL:MG5400 series;CMD:URF;" driver="bjc-MG5400-series" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5410" driver="bjc-PIXMA-MG5410" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5420" driver="bjc-PIXMA-MG5420" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5422" driver="bjc-PIXMA-MG5422" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG5430" driver="bjc-PIXUS-MG5430" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5440" driver="bjc-PIXMA-MG5440" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5450" driver="bjc-PIXMA-MG5450" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5460" driver="bjc-PIXMA-MG5460" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5470" driver="bjc-PIXMA-MG5470" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5480" driver="bjc-PIXMA-MG5480" manufacturer="Canon" model="8005400" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG5500 family --> - <printer translate="name" name="Canon MG5500 series" driver="bjc-MG5500-series" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG5500-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5510" driver="bjc-PIXMA-MG5510" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5510">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5520" driver="bjc-PIXMA-MG5520" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5520">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5522" driver="bjc-PIXMA-MG5522" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5522">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG5530" driver="bjc-PIXUS-MG5530" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG5530">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5540" driver="bjc-PIXMA-MG5540" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5540">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5550" driver="bjc-PIXMA-MG5550" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5550">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5560" driver="bjc-PIXMA-MG5560" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5560">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5570" driver="bjc-PIXMA-MG5570" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5570">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5580" driver="bjc-PIXMA-MG5580" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5580">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG5500 series" driver="bjc-MG5500-series" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5510" driver="bjc-PIXMA-MG5510" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5520" driver="bjc-PIXMA-MG5520" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5522" driver="bjc-PIXMA-MG5522" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG5530" driver="bjc-PIXUS-MG5530" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5540" driver="bjc-PIXMA-MG5540" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5550" driver="bjc-PIXMA-MG5550" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5560" driver="bjc-PIXMA-MG5560" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5570" driver="bjc-PIXMA-MG5570" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5580" driver="bjc-PIXMA-MG5580" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG5600 family --> - <printer translate="name" name="Canon MG5600 series" driver="bjc-MG5600-series" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG5600-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5610" driver="bjc-PIXMA-MG5610" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5610">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5620" driver="bjc-PIXMA-MG5620" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5620">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5622" driver="bjc-PIXMA-MG5622" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5622">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG5630" driver="bjc-PIXUS-MG5630" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG5630">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5640" driver="bjc-PIXMA-MG5640" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5640">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5650" driver="bjc-PIXMA-MG5650" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5650">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5660" driver="bjc-PIXMA-MG5660" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5660">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5670" driver="bjc-PIXMA-MG5670" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5670">EXPERIMENTAL</printer> - <printer translate="name" name="Canon Mommy Photo MG5670" driver="bjc-Mommy-Photo-MG5670" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-Mommy-Photo-MG5670">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5680" driver="bjc-PIXMA-MG5680" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5680">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG5600 series" driver="bjc-MG5600-series" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5610" driver="bjc-PIXMA-MG5610" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5620" driver="bjc-PIXMA-MG5620" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5622" driver="bjc-PIXMA-MG5622" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG5630" driver="bjc-PIXUS-MG5630" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5640" driver="bjc-PIXMA-MG5640" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5650" driver="bjc-PIXMA-MG5650" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5660" driver="bjc-PIXMA-MG5660" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5670" driver="bjc-PIXMA-MG5670" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon Mommy Photo MG5670" driver="bjc-Mommy-Photo-MG5670" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5680" driver="bjc-PIXMA-MG5680" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG5700 family --> - <printer translate="name" name="Canon MG5700 series" driver="bjc-MG5700-series" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG5700-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5710" driver="bjc-PIXMA-MG5710" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5710">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5720" driver="bjc-PIXMA-MG5720" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5720">EXPERIMENTAL</printer><!-- black model --> - <printer translate="name" name="Canon PIXMA MG5721" driver="bjc-PIXMA-MG5721" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5721">EXPERIMENTAL</printer><!-- silver/black model --> - <printer translate="name" name="Canon PIXMA MG5722" driver="bjc-PIXMA-MG5722" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5722">EXPERIMENTAL</printer><!-- silver/white model --> - <printer translate="name" name="Canon PIXUS MG5730" driver="bjc-PIXUS-MG5730" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG5730">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5740" driver="bjc-PIXMA-MG5740" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5740">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5750" driver="bjc-PIXMA-MG5750" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5750">EXPERIMENTAL</printer><!-- black model --> - <printer translate="name" name="Canon PIXMA MG5751" driver="bjc-PIXMA-MG5751" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5751">EXPERIMENTAL</printer><!-- white model --> - <printer translate="name" name="Canon PIXMA MG5752" driver="bjc-PIXMA-MG5752" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5752">EXPERIMENTAL</printer><!-- silver/black model --> - <printer translate="name" name="Canon PIXMA MG5753" driver="bjc-PIXMA-MG5753" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5753">EXPERIMENTAL</printer><!-- silver/white model --> - <printer translate="name" name="Canon PIXMA MG5770" driver="bjc-PIXMA-MG5770" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5770">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5780" driver="bjc-PIXMA-MG5780" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5780">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5790" driver="bjc-PIXMA-MG5790" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5790">EXPERIMENTAL</printer> - <printer translate="name" name="Canon Mommy Photo MG5790" driver="bjc-Mommy-Photo-MG5790" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-Mommy-Photo-MG5790">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG5795" driver="bjc-PIXMA-MG5795" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG5795">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG5700 series" driver="bjc-MG5700-series" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5710" driver="bjc-PIXMA-MG5710" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5720" driver="bjc-PIXMA-MG5720" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer><!-- black model --> + <printer translate="name" name="Canon PIXMA MG5721" driver="bjc-PIXMA-MG5721" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer><!-- silver/black model --> + <printer translate="name" name="Canon PIXMA MG5722" driver="bjc-PIXMA-MG5722" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer><!-- silver/white model --> + <printer translate="name" name="Canon PIXUS MG5730" driver="bjc-PIXUS-MG5730" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5740" driver="bjc-PIXMA-MG5740" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5750" driver="bjc-PIXMA-MG5750" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer><!-- black model --> + <printer translate="name" name="Canon PIXMA MG5751" driver="bjc-PIXMA-MG5751" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer><!-- white model --> + <printer translate="name" name="Canon PIXMA MG5752" driver="bjc-PIXMA-MG5752" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer><!-- silver/black model --> + <printer translate="name" name="Canon PIXMA MG5753" driver="bjc-PIXMA-MG5753" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer><!-- silver/white model --> + <printer translate="name" name="Canon PIXMA MG5770" driver="bjc-PIXMA-MG5770" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5780" driver="bjc-PIXMA-MG5780" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5790" driver="bjc-PIXMA-MG5790" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon Mommy Photo MG5790" driver="bjc-Mommy-Photo-MG5790" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG5795" driver="bjc-PIXMA-MG5795" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG6100 family --> - <printer translate="name" name="Canon MG6100 series" driver="bjc-MG6100-series" manufacturer="Canon" model="8006100" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG6100-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6100" driver="bjc-PIXMA-MG6100" manufacturer="Canon" model="8006100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6100">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6110" driver="bjc-PIXMA-MG6110" manufacturer="Canon" model="8006100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6110">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6120" driver="bjc-PIXMA-MG6120" manufacturer="Canon" model="8006100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6120">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG6130" driver="bjc-PIXUS-MG6130" manufacturer="Canon" model="8006100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG6130">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6140" driver="bjc-PIXMA-MG6140" manufacturer="Canon" model="8006100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6140">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6150" driver="bjc-PIXMA-MG6150" manufacturer="Canon" model="8006100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6150">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6170" driver="bjc-PIXMA-MG6170" manufacturer="Canon" model="8006100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6170">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6180" driver="bjc-PIXMA-MG6180" manufacturer="Canon" model="8006100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6180">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG6100 series" driver="bjc-MG6100-series" manufacturer="Canon" model="8006100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6100" driver="bjc-PIXMA-MG6100" manufacturer="Canon" model="8006100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6110" driver="bjc-PIXMA-MG6110" manufacturer="Canon" model="8006100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6120" driver="bjc-PIXMA-MG6120" manufacturer="Canon" model="8006100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG6130" driver="bjc-PIXUS-MG6130" manufacturer="Canon" model="8006100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6140" driver="bjc-PIXMA-MG6140" manufacturer="Canon" model="8006100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6150" driver="bjc-PIXMA-MG6150" manufacturer="Canon" model="8006100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6170" driver="bjc-PIXMA-MG6170" manufacturer="Canon" model="8006100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6180" driver="bjc-PIXMA-MG6180" manufacturer="Canon" model="8006100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG6200 family --> - <printer translate="name" name="Canon MG6200 series" driver="bjc-MG6200-series" manufacturer="Canon" model="8006200" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG6200-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6200" driver="bjc-PIXMA-MG6200" manufacturer="Canon" model="8006200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6200">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6210" driver="bjc-PIXMA-MG6210" manufacturer="Canon" model="8006200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6210">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6220" driver="bjc-PIXMA-MG6220" manufacturer="Canon" model="8006200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6220">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG6230" driver="bjc-PIXUS-MG6230" manufacturer="Canon" model="8006200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG6230">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6240" driver="bjc-PIXMA-MG6240" manufacturer="Canon" model="8006200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6240">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6250" driver="bjc-PIXMA-MG6250" manufacturer="Canon" model="8006200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6250">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6270" driver="bjc-PIXMA-MG6270" manufacturer="Canon" model="8006200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6270">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6280" driver="bjc-PIXMA-MG6280" manufacturer="Canon" model="8006200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6280">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG6200 series" driver="bjc-MG6200-series" manufacturer="Canon" model="8006200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6200" driver="bjc-PIXMA-MG6200" manufacturer="Canon" model="8006200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6210" driver="bjc-PIXMA-MG6210" manufacturer="Canon" model="8006200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6220" driver="bjc-PIXMA-MG6220" manufacturer="Canon" model="8006200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG6230" driver="bjc-PIXUS-MG6230" manufacturer="Canon" model="8006200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6240" driver="bjc-PIXMA-MG6240" manufacturer="Canon" model="8006200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6250" driver="bjc-PIXMA-MG6250" manufacturer="Canon" model="8006200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6270" driver="bjc-PIXMA-MG6270" manufacturer="Canon" model="8006200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6280" driver="bjc-PIXMA-MG6280" manufacturer="Canon" model="8006200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG6300 family --> - <printer translate="name" name="Canon MG6300 series" driver="bjc-MG6300-series" manufacturer="Canon" model="8006300" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG6300-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6310" driver="bjc-PIXMA-MG6310" manufacturer="Canon" model="8006300" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6310">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6320" driver="bjc-PIXMA-MG6320" manufacturer="Canon" model="8006300" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6320">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG6330" driver="bjc-PIXUS-MG6330" manufacturer="Canon" model="8006300" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG6330">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6340" driver="bjc-PIXMA-MG6340" manufacturer="Canon" model="8006300" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6340">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6350" driver="bjc-PIXMA-MG6350" manufacturer="Canon" model="8006300" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6350">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6360" driver="bjc-PIXMA-MG6360" manufacturer="Canon" model="8006300" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6360">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6370" driver="bjc-PIXMA-MG6370" manufacturer="Canon" model="8006300" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6370">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6380" driver="bjc-PIXMA-MG6380" manufacturer="Canon" model="8006300" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6380">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG6300 series" driver="bjc-MG6300-series" manufacturer="Canon" model="8006300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6310" driver="bjc-PIXMA-MG6310" manufacturer="Canon" model="8006300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6320" driver="bjc-PIXMA-MG6320" manufacturer="Canon" model="8006300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG6330" driver="bjc-PIXUS-MG6330" manufacturer="Canon" model="8006300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6340" driver="bjc-PIXMA-MG6340" manufacturer="Canon" model="8006300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6350" driver="bjc-PIXMA-MG6350" manufacturer="Canon" model="8006300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6360" driver="bjc-PIXMA-MG6360" manufacturer="Canon" model="8006300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6370" driver="bjc-PIXMA-MG6370" manufacturer="Canon" model="8006300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6380" driver="bjc-PIXMA-MG6380" manufacturer="Canon" model="8006300" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG6400 family --> - <printer translate="name" name="Canon MG6400 series" driver="bjc-MG6400-series" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG6400-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6400" driver="bjc-PIXMA-MG6400" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6400">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6410" driver="bjc-PIXMA-MG6410" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6410">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6420" driver="bjc-PIXMA-MG6420" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6420">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6440" driver="bjc-PIXMA-MG6440" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6440">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6450" driver="bjc-PIXMA-MG6450" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6450">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6470" driver="bjc-PIXMA-MG6470" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6470">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG6400 series" driver="bjc-MG6400-series" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6400" driver="bjc-PIXMA-MG6400" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6410" driver="bjc-PIXMA-MG6410" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6420" driver="bjc-PIXMA-MG6420" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6440" driver="bjc-PIXMA-MG6440" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6450" driver="bjc-PIXMA-MG6450" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6470" driver="bjc-PIXMA-MG6470" manufacturer="Canon" model="8005500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG6500 family --> - <printer translate="name" name="Canon MG6500 series" driver="bjc-MG6500-series" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG6500-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG6530" driver="bjc-PIXUS-MG6530" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG6530">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG6500 series" driver="bjc-MG6500-series" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG6530" driver="bjc-PIXUS-MG6530" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG6600 family --> - <printer translate="name" name="Canon MG6600 series" driver="bjc-MG6600-series" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG6600-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6610" driver="bjc-PIXMA-MG6610" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6610">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6620" driver="bjc-PIXMA-MG6620" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6620">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6622" driver="bjc-PIXMA-MG6622" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6622">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6640" driver="bjc-PIXMA-MG6640" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6640">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6650" driver="bjc-PIXMA-MG6650" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6650">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6660" driver="bjc-PIXMA-MG6660" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6660">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6670" driver="bjc-PIXMA-MG6670" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6670">EXPERIMENTAL</printer> - <printer translate="name" name="Canon Mommy Photo MG6670" driver="bjc-Mommy-Photo-MG6670" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-Mommy-Photo-MG6670">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6680" driver="bjc-PIXMA-MG6680" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6680">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG6600 series" driver="bjc-MG6600-series" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6610" driver="bjc-PIXMA-MG6610" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6620" driver="bjc-PIXMA-MG6620" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6622" driver="bjc-PIXMA-MG6622" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6640" driver="bjc-PIXMA-MG6640" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6650" driver="bjc-PIXMA-MG6650" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6660" driver="bjc-PIXMA-MG6660" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6670" driver="bjc-PIXMA-MG6670" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon Mommy Photo MG6670" driver="bjc-Mommy-Photo-MG6670" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6680" driver="bjc-PIXMA-MG6680" manufacturer="Canon" model="8005600" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG6700 family --> - <printer translate="name" name="Canon MG6700 series" driver="bjc-MG6700-series" manufacturer="Canon" model="8006700" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG6700-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG6730" driver="bjc-PIXUS-MG6730" manufacturer="Canon" model="8006700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG6730">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG6700 series" driver="bjc-MG6700-series" manufacturer="Canon" model="8006700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG6730" driver="bjc-PIXUS-MG6730" manufacturer="Canon" model="8006700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG6800 family --> - <printer translate="name" name="Canon MG6800 series" driver="bjc-MG6800-series" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG6800-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6810" driver="bjc-PIXMA-MG6810" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6810">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6820" driver="bjc-PIXMA-MG6820" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6820">EXPERIMENTAL</printer><!-- black model --> - <printer translate="name" name="Canon PIXMA MG6821" driver="bjc-PIXMA-MG6821" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6821">EXPERIMENTAL</printer><!-- silver/black model --> - <printer translate="name" name="Canon PIXMA MG6822" driver="bjc-PIXMA-MG6822" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6822">EXPERIMENTAL</printer><!-- silver/white model --> - <printer translate="name" name="Canon PIXMA MG6840" driver="bjc-PIXMA-MG6840" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6840">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6850" driver="bjc-PIXMA-MG6850" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6850">EXPERIMENTAL</printer><!-- black model --> - <printer translate="name" name="Canon PIXMA MG6851" driver="bjc-PIXMA-MG6851" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6851">EXPERIMENTAL</printer><!-- white model --> - <printer translate="name" name="Canon PIXMA MG6852" driver="bjc-PIXMA-MG6852" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6852">EXPERIMENTAL</printer><!-- silver/black model --> - <printer translate="name" name="Canon PIXMA MG6853" driver="bjc-PIXMA-MG6853" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6853">EXPERIMENTAL</printer><!-- silver/white model --> - <printer translate="name" name="Canon PIXMA MG6870" driver="bjc-PIXMA-MG6870" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6870">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG6880" driver="bjc-PIXMA-MG6880" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG6880">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG6800 series" driver="bjc-MG6800-series" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6810" driver="bjc-PIXMA-MG6810" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6820" driver="bjc-PIXMA-MG6820" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer><!-- black model --> + <printer translate="name" name="Canon PIXMA MG6821" driver="bjc-PIXMA-MG6821" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer><!-- silver/black model --> + <printer translate="name" name="Canon PIXMA MG6822" driver="bjc-PIXMA-MG6822" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer><!-- silver/white model --> + <printer translate="name" name="Canon PIXMA MG6840" driver="bjc-PIXMA-MG6840" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6850" driver="bjc-PIXMA-MG6850" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer><!-- black model --> + <printer translate="name" name="Canon PIXMA MG6851" driver="bjc-PIXMA-MG6851" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer><!-- white model --> + <printer translate="name" name="Canon PIXMA MG6852" driver="bjc-PIXMA-MG6852" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer><!-- silver/black model --> + <printer translate="name" name="Canon PIXMA MG6853" driver="bjc-PIXMA-MG6853" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer><!-- silver/white model --> + <printer translate="name" name="Canon PIXMA MG6870" driver="bjc-PIXMA-MG6870" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG6880" driver="bjc-PIXMA-MG6880" manufacturer="Canon" model="8005700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG6900 family --> - <printer translate="name" name="Canon MG6900 series" driver="bjc-MG6900-series" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG6900-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG6930" driver="bjc-PIXUS-MG6930" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG6930">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG6900 series" driver="bjc-MG6900-series" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG6930" driver="bjc-PIXUS-MG6930" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG7100 family --> - <printer translate="name" name="Canon MG7100 series" driver="bjc-MG7100-series" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG7100-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG7110" driver="bjc-PIXMA-MG7110" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7110">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG7120" driver="bjc-PIXMA-MG7120" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7120">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG7130" driver="bjc-PIXUS-MG7130" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG7130">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG7140" driver="bjc-PIXMA-MG7140" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7140">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG7150" driver="bjc-PIXMA-MG7150" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7150">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG7170" driver="bjc-PIXMA-MG7170" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7170">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG7180" driver="bjc-PIXMA-MG7180" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7180">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG7100 series" driver="bjc-MG7100-series" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG7110" driver="bjc-PIXMA-MG7110" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG7120" driver="bjc-PIXMA-MG7120" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG7130" driver="bjc-PIXUS-MG7130" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG7140" driver="bjc-PIXMA-MG7140" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG7150" driver="bjc-PIXMA-MG7150" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG7170" driver="bjc-PIXMA-MG7170" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG7180" driver="bjc-PIXMA-MG7180" manufacturer="Canon" model="8006500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG7500 family --> - <printer translate="name" name="Canon MG7500 series" driver="bjc-MG7500-series" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG7500-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG7510" driver="bjc-PIXMA-MG7510" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7510">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG7520" driver="bjc-PIXMA-MG7520" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7520">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG7530" driver="bjc-PIXUS-MG7530" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG7530">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG7530F" driver="bjc-PIXUS-MG7530F" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG7530F">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG7540" driver="bjc-PIXMA-MG7540" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7540">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG7550" driver="bjc-PIXMA-MG7550" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7550">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG7560" driver="bjc-PIXMA-MG7560" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7560">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG7570" driver="bjc-PIXMA-MG7570" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7570">EXPERIMENTAL</printer> - <printer translate="name" name="Canon Mommy Photo MG7570" driver="bjc-Mommy-Photo-MG7570" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params" foomaticid="Canon-Mommy-Photo-MG7570">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG7580" driver="bjc-PIXMA-MG7580" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7580">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG7500 series" driver="bjc-MG7500-series" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG7510" driver="bjc-PIXMA-MG7510" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG7520" driver="bjc-PIXMA-MG7520" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG7530" driver="bjc-PIXUS-MG7530" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG7530F" driver="bjc-PIXUS-MG7530F" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG7540" driver="bjc-PIXMA-MG7540" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG7550" driver="bjc-PIXMA-MG7550" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG7560" driver="bjc-PIXMA-MG7560" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG7570" driver="bjc-PIXMA-MG7570" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon Mommy Photo MG7570" driver="bjc-Mommy-Photo-MG7570" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG7580" driver="bjc-PIXMA-MG7580" manufacturer="Canon" model="8007500" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG7700 family --> - <printer translate="name" name="Canon MG7700 series" driver="bjc-MG7700-series" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG7700-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG7710" driver="bjc-PIXMA-MG7710" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7710">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG7720" driver="bjc-PIXMA-MG7720" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7720">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG7730" driver="bjc-PIXUS-MG7730" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG7730">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG7730F" driver="bjc-PIXUS-MG7730F" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG7730F">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG7740" driver="bjc-PIXMA-MG7740" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7740">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG7750" driver="bjc-PIXMA-MG7750" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7750">EXPERIMENTAL</printer><!-- black model --> - <printer translate="name" name="Canon PIXMA MG7751" driver="bjc-PIXMA-MG7751" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7751">EXPERIMENTAL</printer><!-- white model --> - <printer translate="name" name="Canon PIXMA MG7752" driver="bjc-PIXMA-MG7752" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7752">EXPERIMENTAL</printer><!-- red model --> - <printer translate="name" name="Canon PIXMA MG7753" driver="bjc-PIXMA-MG7753" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7753">EXPERIMENTAL</printer><!-- gold model --> - <printer translate="name" name="Canon PIXMA MG7770" driver="bjc-PIXMA-MG7770" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7770">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG7780" driver="bjc-PIXMA-MG7780" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7780">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG7790" driver="bjc-PIXMA-MG7790" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG7790">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG7700 series" driver="bjc-MG7700-series" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG7710" driver="bjc-PIXMA-MG7710" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG7720" driver="bjc-PIXMA-MG7720" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG7730" driver="bjc-PIXUS-MG7730" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG7730F" driver="bjc-PIXUS-MG7730F" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG7740" driver="bjc-PIXMA-MG7740" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG7750" driver="bjc-PIXMA-MG7750" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer><!-- black model --> + <printer translate="name" name="Canon PIXMA MG7751" driver="bjc-PIXMA-MG7751" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer><!-- white model --> + <printer translate="name" name="Canon PIXMA MG7752" driver="bjc-PIXMA-MG7752" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer><!-- red model --> + <printer translate="name" name="Canon PIXMA MG7753" driver="bjc-PIXMA-MG7753" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer><!-- gold model --> + <printer translate="name" name="Canon PIXMA MG7770" driver="bjc-PIXMA-MG7770" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG7780" driver="bjc-PIXMA-MG7780" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG7790" driver="bjc-PIXMA-MG7790" manufacturer="Canon" model="8007700" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG8100 family --> - <printer translate="name" name="Canon MG8100 series" driver="bjc-MG8100-series" manufacturer="Canon" model="8008100" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG8100-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG8100" driver="bjc-PIXMA-MG8100" manufacturer="Canon" model="8008100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG8100">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG8120" driver="bjc-PIXMA-MG8120" manufacturer="Canon" model="8008100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG8120">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG8120B" driver="bjc-PIXMA-MG8120B" manufacturer="Canon" model="8008100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG8120B">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG8130" driver="bjc-PIXUS-MG8130" manufacturer="Canon" model="8008100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG8130">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG8140" driver="bjc-PIXMA-MG8140" manufacturer="Canon" model="8008100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG8140">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG8150" driver="bjc-PIXMA-MG8150" manufacturer="Canon" model="8008100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG8150">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG8170" driver="bjc-PIXMA-MG8170" manufacturer="Canon" model="8008100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG8170">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG8180" driver="bjc-PIXMA-MG8180" manufacturer="Canon" model="8008100" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG8180">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG8100 series" driver="bjc-MG8100-series" manufacturer="Canon" model="8008100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG8100" driver="bjc-PIXMA-MG8100" manufacturer="Canon" model="8008100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG8120" driver="bjc-PIXMA-MG8120" manufacturer="Canon" model="8008100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG8120B" driver="bjc-PIXMA-MG8120B" manufacturer="Canon" model="8008100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG8130" driver="bjc-PIXUS-MG8130" manufacturer="Canon" model="8008100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG8140" driver="bjc-PIXMA-MG8140" manufacturer="Canon" model="8008100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG8150" driver="bjc-PIXMA-MG8150" manufacturer="Canon" model="8008100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG8170" driver="bjc-PIXMA-MG8170" manufacturer="Canon" model="8008100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG8180" driver="bjc-PIXMA-MG8180" manufacturer="Canon" model="8008100" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MG8200 family --> - <printer translate="name" name="Canon MG8200 series" driver="bjc-MG8200-series" manufacturer="Canon" model="8008200" parameters="PIXMA_iP4300_params" foomaticid="Canon-MG8200-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG8200" driver="bjc-PIXMA-MG8200" manufacturer="Canon" model="8008200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG8200">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG8220" driver="bjc-PIXMA-MG8220" manufacturer="Canon" model="8008200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG8220">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MG8230" driver="bjc-PIXUS-MG8230" manufacturer="Canon" model="8008200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXUS-MG8230">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG8240" driver="bjc-PIXMA-MG8240" manufacturer="Canon" model="8008200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG8240">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG8250" driver="bjc-PIXMA-MG8250" manufacturer="Canon" model="8008200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG8250">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG8270" driver="bjc-PIXMA-MG8270" manufacturer="Canon" model="8008200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG8270">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MG8280" driver="bjc-PIXMA-MG8280" manufacturer="Canon" model="8008200" parameters="PIXMA_iP4300_params" foomaticid="Canon-PIXMA-MG8280">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MG8200 series" driver="bjc-MG8200-series" manufacturer="Canon" model="8008200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG8200" driver="bjc-PIXMA-MG8200" manufacturer="Canon" model="8008200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG8220" driver="bjc-PIXMA-MG8220" manufacturer="Canon" model="8008200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MG8230" driver="bjc-PIXUS-MG8230" manufacturer="Canon" model="8008200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG8240" driver="bjc-PIXMA-MG8240" manufacturer="Canon" model="8008200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG8250" driver="bjc-PIXMA-MG8250" manufacturer="Canon" model="8008200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG8270" driver="bjc-PIXMA-MG8270" manufacturer="Canon" model="8008200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MG8280" driver="bjc-PIXMA-MG8280" manufacturer="Canon" model="8008200" parameters="PIXMA_iP4300_params">EXPERIMENTAL</printer> <!-- Canon MX300 family --> - <printer translate="name" name="Canon MX300 series" driver="bjc-MX300-series" manufacturer="Canon" model="9000300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX300-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX300" driver="bjc-MULTIPASS-MX300" manufacturer="Canon" model="9000300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX300">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MX308" driver="bjc-PIXMA-MX308" manufacturer="Canon" model="9000300" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX308">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX300 series" driver="bjc-MX300-series" manufacturer="Canon" model="9000300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX300" driver="bjc-MULTIPASS-MX300" manufacturer="Canon" model="9000300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MX308" driver="bjc-PIXMA-MX308" manufacturer="Canon" model="9000300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX310 family--> - <printer translate="name" name="Canon MX310 series" driver="bjc-MX310-series" manufacturer="Canon" model="9000300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX310-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX310" driver="bjc-MULTIPASS-MX310" manufacturer="Canon" model="9000300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX310">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MX318" driver="bjc-PIXMA-MX318" manufacturer="Canon" model="9000300" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX318">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX310 series" driver="bjc-MX310-series" manufacturer="Canon" model="9000300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX310" driver="bjc-MULTIPASS-MX310" manufacturer="Canon" model="9000300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MX318" driver="bjc-PIXMA-MX318" manufacturer="Canon" model="9000300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX320 family--> - <printer translate="name" name="Canon MX320 series" driver="bjc-MX320-series" manufacturer="Canon" model="9000330" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX320-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX320" driver="bjc-MULTIPASS-MX320" manufacturer="Canon" model="9000330" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX320">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MX328" driver="bjc-PIXMA-MX328" manufacturer="Canon" model="9000330" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX328">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX320 series" driver="bjc-MX320-series" manufacturer="Canon" model="9000330" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX320" driver="bjc-MULTIPASS-MX320" manufacturer="Canon" model="9000330" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MX328" driver="bjc-PIXMA-MX328" manufacturer="Canon" model="9000330" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX330 family--> - <printer translate="name" name="Canon MX330 series" driver="bjc-MX330-series" manufacturer="Canon" model="9000330" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX330-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX330" driver="bjc-MULTIPASS-MX330" manufacturer="Canon" model="9000330" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX330">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MX338" driver="bjc-PIXMA-MX338" manufacturer="Canon" model="9000330" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX338">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX330 series" driver="bjc-MX330-series" manufacturer="Canon" model="9000330" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX330" driver="bjc-MULTIPASS-MX330" manufacturer="Canon" model="9000330" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MX338" driver="bjc-PIXMA-MX338" manufacturer="Canon" model="9000330" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX340 family --> - <printer translate="name" name="Canon MX340 series" driver="bjc-MX340-series" manufacturer="Canon" model="9000340" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX340-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX340" driver="bjc-MULTIPASS-MX340" manufacturer="Canon" model="9000340" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX340">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MX347" driver="bjc-PIXMA-MX347" manufacturer="Canon" model="9000340" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX347">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX348" driver="bjc-PIXMA-MX348" manufacturer="Canon" model="9000340" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX348">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX340 series" driver="bjc-MX340-series" manufacturer="Canon" model="9000340" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX340" driver="bjc-MULTIPASS-MX340" manufacturer="Canon" model="9000340" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MX347" driver="bjc-PIXMA-MX347" manufacturer="Canon" model="9000340" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX348" driver="bjc-PIXMA-MX348" manufacturer="Canon" model="9000340" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX350 family --> - <printer translate="name" name="Canon MX350 series" driver="bjc-MX350-series" manufacturer="Canon" model="9000340" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX350-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX350" driver="bjc-MULTIPASS-MX350" manufacturer="Canon" model="9000340" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX350">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MX350" driver="bjc-PIXUS-MX350" manufacturer="Canon" model="9000340" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MX350">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX357" driver="bjc-PIXMA-MX357" manufacturer="Canon" model="9000340" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX357">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX358" driver="bjc-PIXMA-MX358" manufacturer="Canon" model="9000340" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX358">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX350 series" driver="bjc-MX350-series" manufacturer="Canon" model="9000340" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX350" driver="bjc-MULTIPASS-MX350" manufacturer="Canon" model="9000340" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MX350" driver="bjc-PIXUS-MX350" manufacturer="Canon" model="9000340" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX357" driver="bjc-PIXMA-MX357" manufacturer="Canon" model="9000340" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX358" driver="bjc-PIXMA-MX358" manufacturer="Canon" model="9000340" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX360 family --> - <printer translate="name" name="Canon MX360 series" driver="bjc-MX360-series" manufacturer="Canon" model="9000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX360-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX360" driver="bjc-MULTIPASS-MX360" manufacturer="Canon" model="9000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX360">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MX366" driver="bjc-PIXMA-MX366" manufacturer="Canon" model="9000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX366">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX368" driver="bjc-PIXMA-MX368" manufacturer="Canon" model="9000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX368">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX360 series" driver="bjc-MX360-series" manufacturer="Canon" model="9000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX360" driver="bjc-MULTIPASS-MX360" manufacturer="Canon" model="9000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MX366" driver="bjc-PIXMA-MX366" manufacturer="Canon" model="9000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX368" driver="bjc-PIXMA-MX368" manufacturer="Canon" model="9000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX370 family --> - <printer translate="name" name="Canon MX370 series" driver="bjc-MX370-series" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX370-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX370" driver="bjc-MULTIPASS-MX370" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX370">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MX371" driver="bjc-PIXMA-MX371" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX371">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX372" driver="bjc-PIXMA-MX372" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX372">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX374" driver="bjc-PIXMA-MX374" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX374">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX375" driver="bjc-PIXMA-MX375" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX375">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX376" driver="bjc-PIXMA-MX376" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX376">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX377" driver="bjc-PIXMA-MX377" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX377">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX378" driver="bjc-PIXMA-MX378" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX378">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX370 series" driver="bjc-MX370-series" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX370" driver="bjc-MULTIPASS-MX370" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MX371" driver="bjc-PIXMA-MX371" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX372" driver="bjc-PIXMA-MX372" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX374" driver="bjc-PIXMA-MX374" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX375" driver="bjc-PIXMA-MX375" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX376" driver="bjc-PIXMA-MX376" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX377" driver="bjc-PIXMA-MX377" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX378" driver="bjc-PIXMA-MX378" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX390 family --> - <printer translate="name" name="Canon MX390 series" driver="bjc-MX390-series" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX390-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX391" driver="bjc-PIXMA-MX391" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX391">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX392" driver="bjc-PIXMA-MX392" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX392">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX394" driver="bjc-PIXMA-MX394" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX394">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX395" driver="bjc-PIXMA-MX395" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX395">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX396" driver="bjc-PIXMA-MX396" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX396">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX397" driver="bjc-PIXMA-MX397" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX397">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX398" driver="bjc-PIXMA-MX398" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX398">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX390 series" driver="bjc-MX390-series" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX391" driver="bjc-PIXMA-MX391" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX392" driver="bjc-PIXMA-MX392" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX394" driver="bjc-PIXMA-MX394" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX395" driver="bjc-PIXMA-MX395" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX396" driver="bjc-PIXMA-MX396" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX397" driver="bjc-PIXMA-MX397" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX398" driver="bjc-PIXMA-MX398" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX410 family --> - <printer translate="name" name="Canon MX410 series" driver="bjc-MX410-series" manufacturer="Canon" model="9000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX410-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX410" driver="bjc-MULTIPASS-MX410" manufacturer="Canon" model="9000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX410">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MX416" driver="bjc-PIXMA-MX416" manufacturer="Canon" model="9000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX416">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX418" driver="bjc-PIXMA-MX418" manufacturer="Canon" model="9000360" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX418">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX410 series" driver="bjc-MX410-series" manufacturer="Canon" model="9000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX410" driver="bjc-MULTIPASS-MX410" manufacturer="Canon" model="9000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MX416" driver="bjc-PIXMA-MX416" manufacturer="Canon" model="9000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX418" driver="bjc-PIXMA-MX418" manufacturer="Canon" model="9000360" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX420 family --> - <printer translate="name" name="Canon MX420 series" driver="bjc-MX420-series" manufacturer="Canon" model="9000420" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX420-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX420" driver="bjc-MULTIPASS-MX420" manufacturer="Canon" model="9000420" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX420">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MX420" driver="bjc-PIXUS-MX420" manufacturer="Canon" model="9000420" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MX420">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX426" driver="bjc-PIXMA-MX426" manufacturer="Canon" model="9000420" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX426">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX428" driver="bjc-PIXMA-MX428" manufacturer="Canon" model="9000420" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX428">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX420 series" driver="bjc-MX420-series" manufacturer="Canon" model="9000420" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX420" driver="bjc-MULTIPASS-MX420" manufacturer="Canon" model="9000420" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MX420" driver="bjc-PIXUS-MX420" manufacturer="Canon" model="9000420" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX426" driver="bjc-PIXMA-MX426" manufacturer="Canon" model="9000420" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX428" driver="bjc-PIXMA-MX428" manufacturer="Canon" model="9000420" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX430 family --> - <printer translate="name" name="Canon MX430 series" driver="bjc-MX430-series" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX430-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX430" driver="bjc-MULTIPASS-MX430" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX430">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MX431" driver="bjc-PIXMA-MX431" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX431">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX432" driver="bjc-PIXMA-MX432" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX432">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX434" driver="bjc-PIXMA-MX434" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX434">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX435" driver="bjc-PIXMA-MX435" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX435">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX436" driver="bjc-PIXMA-MX436" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX436">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX437" driver="bjc-PIXMA-MX437" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX437">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX438" driver="bjc-PIXMA-MX438" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX438">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX439" driver="bjc-PIXMA-MX439" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX439">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX430 series" driver="bjc-MX430-series" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX430" driver="bjc-MULTIPASS-MX430" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MX431" driver="bjc-PIXMA-MX431" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX432" driver="bjc-PIXMA-MX432" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX434" driver="bjc-PIXMA-MX434" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX435" driver="bjc-PIXMA-MX435" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX436" driver="bjc-PIXMA-MX436" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX437" driver="bjc-PIXMA-MX437" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX438" driver="bjc-PIXMA-MX438" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX439" driver="bjc-PIXMA-MX439" manufacturer="Canon" model="9000370" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX450 family --> - <printer translate="name" name="Canon MX450 series" driver="bjc-MX450-series" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX450-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX451" driver="bjc-PIXMA-MX451" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX451">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX452" driver="bjc-PIXMA-MX452" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX452">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX454" driver="bjc-PIXMA-MX454" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX454">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX455" driver="bjc-PIXMA-MX455" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX455">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX456" driver="bjc-PIXMA-MX456" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX456">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX457" driver="bjc-PIXMA-MX457" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX457">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX458" driver="bjc-PIXMA-MX458" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX458">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX459" driver="bjc-PIXMA-MX459" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX459">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX450 series" driver="bjc-MX450-series" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX451" driver="bjc-PIXMA-MX451" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX452" driver="bjc-PIXMA-MX452" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX454" driver="bjc-PIXMA-MX454" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX455" driver="bjc-PIXMA-MX455" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX456" driver="bjc-PIXMA-MX456" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX457" driver="bjc-PIXMA-MX457" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX458" driver="bjc-PIXMA-MX458" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX459" driver="bjc-PIXMA-MX459" manufacturer="Canon" model="9000390" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX470 family --> - <printer translate="name" name="Canon MX470 series" driver="bjc-MX470-series" manufacturer="Canon" model="9000470" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX470-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX471" driver="bjc-PIXMA-MX471" manufacturer="Canon" model="9000470" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX471">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX472" driver="bjc-PIXMA-MX472" manufacturer="Canon" model="9000470" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX472">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX474" driver="bjc-PIXMA-MX474" manufacturer="Canon" model="9000470" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX474">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX475" driver="bjc-PIXMA-MX475" manufacturer="Canon" model="9000470" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX475">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX476" driver="bjc-PIXMA-MX476" manufacturer="Canon" model="9000470" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX476">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX477" driver="bjc-PIXMA-MX477" manufacturer="Canon" model="9000470" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX477">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX478" driver="bjc-PIXMA-MX478" manufacturer="Canon" model="9000470" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX478">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX479" driver="bjc-PIXMA-MX479" manufacturer="Canon" model="9000470" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX479">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX470 series" driver="bjc-MX470-series" manufacturer="Canon" model="9000470" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX471" driver="bjc-PIXMA-MX471" manufacturer="Canon" model="9000470" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX472" driver="bjc-PIXMA-MX472" manufacturer="Canon" model="9000470" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX474" driver="bjc-PIXMA-MX474" manufacturer="Canon" model="9000470" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX475" driver="bjc-PIXMA-MX475" manufacturer="Canon" model="9000470" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX476" driver="bjc-PIXMA-MX476" manufacturer="Canon" model="9000470" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX477" driver="bjc-PIXMA-MX477" manufacturer="Canon" model="9000470" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX478" driver="bjc-PIXMA-MX478" manufacturer="Canon" model="9000470" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX479" driver="bjc-PIXMA-MX479" manufacturer="Canon" model="9000470" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX490 family --> - <printer translate="name" name="Canon MX490 series" driver="bjc-MX490-series" manufacturer="Canon" model="9000490" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX490-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX490" driver="bjc-PIXMA-MX490" manufacturer="Canon" model="9000490" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX490">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX492" driver="bjc-PIXMA-MX492" manufacturer="Canon" model="9000490" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX492">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX494" driver="bjc-PIXMA-MX494" manufacturer="Canon" model="9000490" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX494">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX495" driver="bjc-PIXMA-MX495" manufacturer="Canon" model="9000490" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX495">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX496" driver="bjc-PIXMA-MX496" manufacturer="Canon" model="9000490" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX496">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX497" driver="bjc-PIXMA-MX497" manufacturer="Canon" model="9000490" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX497">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX498" driver="bjc-PIXMA-MX498" manufacturer="Canon" model="9000490" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX498">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX499" driver="bjc-PIXMA-MX499" manufacturer="Canon" model="9000490" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX499">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX490 series" driver="bjc-MX490-series" manufacturer="Canon" model="9000490" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX490" driver="bjc-PIXMA-MX490" manufacturer="Canon" model="9000490" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX492" driver="bjc-PIXMA-MX492" manufacturer="Canon" model="9000490" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX494" driver="bjc-PIXMA-MX494" manufacturer="Canon" model="9000490" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX495" driver="bjc-PIXMA-MX495" manufacturer="Canon" model="9000490" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX496" driver="bjc-PIXMA-MX496" manufacturer="Canon" model="9000490" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX497" driver="bjc-PIXMA-MX497" manufacturer="Canon" model="9000490" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX498" driver="bjc-PIXMA-MX498" manufacturer="Canon" model="9000490" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX499" driver="bjc-PIXMA-MX499" manufacturer="Canon" model="9000490" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX510 family --> - <printer translate="name" name="Canon MX510 series" driver="bjc-MX510-series" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX510-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX510" driver="bjc-MULTIPASS-MX510" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX510">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MX511" driver="bjc-PIXMA-MX511" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX511">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX512" driver="bjc-PIXMA-MX512" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX512">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MX513" driver="bjc-PIXUS-MX513" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MX513">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX514" driver="bjc-PIXMA-MX514" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX514">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX515" driver="bjc-PIXMA-MX515" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX515">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX516" driver="bjc-PIXMA-MX516" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX516">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX517" driver="bjc-PIXMA-MX517" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX517">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX518" driver="bjc-PIXMA-MX518" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX518">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX510 series" driver="bjc-MX510-series" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX510" driver="bjc-MULTIPASS-MX510" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MX511" driver="bjc-PIXMA-MX511" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX512" driver="bjc-PIXMA-MX512" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MX513" driver="bjc-PIXUS-MX513" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX514" driver="bjc-PIXMA-MX514" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX515" driver="bjc-PIXMA-MX515" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX516" driver="bjc-PIXMA-MX516" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX517" driver="bjc-PIXMA-MX517" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX518" driver="bjc-PIXMA-MX518" manufacturer="Canon" model="9000510" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX520 family --> - <printer translate="name" name="Canon MX520 series" driver="bjc-MX520-series" manufacturer="Canon" model="9000520" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX520-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX521" driver="bjc-PIXMA-MX521" manufacturer="Canon" model="9000520" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX521">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX522" driver="bjc-PIXMA-MX522" manufacturer="Canon" model="9000520" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX522">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MX523" driver="bjc-PIXUS-MX523" manufacturer="Canon" model="9000520" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MX523">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX524" driver="bjc-PIXMA-MX524" manufacturer="Canon" model="9000520" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX524">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX525" driver="bjc-PIXMA-MX525" manufacturer="Canon" model="9000520" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX525">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX526" driver="bjc-PIXMA-MX526" manufacturer="Canon" model="9000520" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX526">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX527" driver="bjc-PIXMA-MX527" manufacturer="Canon" model="9000520" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX527">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX528" driver="bjc-PIXMA-MX528" manufacturer="Canon" model="9000520" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX528">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX520 series" driver="bjc-MX520-series" manufacturer="Canon" model="9000520" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX521" driver="bjc-PIXMA-MX521" manufacturer="Canon" model="9000520" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX522" driver="bjc-PIXMA-MX522" manufacturer="Canon" model="9000520" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MX523" driver="bjc-PIXUS-MX523" manufacturer="Canon" model="9000520" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX524" driver="bjc-PIXMA-MX524" manufacturer="Canon" model="9000520" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX525" driver="bjc-PIXMA-MX525" manufacturer="Canon" model="9000520" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX526" driver="bjc-PIXMA-MX526" manufacturer="Canon" model="9000520" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX527" driver="bjc-PIXMA-MX527" manufacturer="Canon" model="9000520" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX528" driver="bjc-PIXMA-MX528" manufacturer="Canon" model="9000520" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX530 family --> - <printer translate="name" name="Canon MX530 series" driver="bjc-MX530-series" manufacturer="Canon" model="9000530" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX530-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX531" driver="bjc-PIXMA-MX531" manufacturer="Canon" model="9000530" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX531">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX532" driver="bjc-PIXMA-MX532" manufacturer="Canon" model="9000530" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX532">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX534" driver="bjc-PIXMA-MX534" manufacturer="Canon" model="9000530" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX534">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX535" driver="bjc-PIXMA-MX535" manufacturer="Canon" model="9000530" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX535">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX536" driver="bjc-PIXMA-MX536" manufacturer="Canon" model="9000530" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX536">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX537" driver="bjc-PIXMA-MX537" manufacturer="Canon" model="9000530" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX537">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX538" driver="bjc-PIXMA-MX538" manufacturer="Canon" model="9000530" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX538">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX530 series" driver="bjc-MX530-series" manufacturer="Canon" model="9000530" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX531" driver="bjc-PIXMA-MX531" manufacturer="Canon" model="9000530" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX532" driver="bjc-PIXMA-MX532" manufacturer="Canon" model="9000530" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX534" driver="bjc-PIXMA-MX534" manufacturer="Canon" model="9000530" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX535" driver="bjc-PIXMA-MX535" manufacturer="Canon" model="9000530" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX536" driver="bjc-PIXMA-MX536" manufacturer="Canon" model="9000530" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX537" driver="bjc-PIXMA-MX537" manufacturer="Canon" model="9000530" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX538" driver="bjc-PIXMA-MX538" manufacturer="Canon" model="9000530" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX700 family --> - <printer translate="name" name="Canon MX700 series" driver="bjc-MX700-series" manufacturer="Canon" model="9000700" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX700-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX700" driver="bjc-MULTIPASS-MX700" manufacturer="Canon" model="9000700" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX700">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> + <printer translate="name" name="Canon MX700 series" driver="bjc-MX700-series" manufacturer="Canon" model="9000700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX700" driver="bjc-MULTIPASS-MX700" manufacturer="Canon" model="9000700" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> <!-- Canon MX710 family --> - <printer translate="name" name="Canon MX710 series" driver="bjc-MX710-series" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX710-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX710" driver="bjc-MULTIPASS-MX710" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX710">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MX711" driver="bjc-PIXMA-MX711" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX711">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX712" driver="bjc-PIXMA-MX712" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX712">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX714" driver="bjc-PIXMA-MX714" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX714">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX715" driver="bjc-PIXMA-MX715" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX715">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX710 series" driver="bjc-MX710-series" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX710" driver="bjc-MULTIPASS-MX710" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MX711" driver="bjc-PIXMA-MX711" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX712" driver="bjc-PIXMA-MX712" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX714" driver="bjc-PIXMA-MX714" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX715" driver="bjc-PIXMA-MX715" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX720 family --> - <printer translate="name" name="Canon MX720 series" driver="bjc-MX720-series" manufacturer="Canon" model="9000720" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX720-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX721" driver="bjc-PIXMA-MX721" manufacturer="Canon" model="9000720" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX721">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX722" driver="bjc-PIXMA-MX722" manufacturer="Canon" model="9000720" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX722">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX725" driver="bjc-PIXMA-MX725" manufacturer="Canon" model="9000720" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX725">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX726" driver="bjc-PIXMA-MX726" manufacturer="Canon" model="9000720" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX726">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX727" driver="bjc-PIXMA-MX727" manufacturer="Canon" model="9000720" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX727">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX728" driver="bjc-PIXMA-MX728" manufacturer="Canon" model="9000720" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX728">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX720 series" driver="bjc-MX720-series" manufacturer="Canon" model="9000720" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX721" driver="bjc-PIXMA-MX721" manufacturer="Canon" model="9000720" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX722" driver="bjc-PIXMA-MX722" manufacturer="Canon" model="9000720" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX725" driver="bjc-PIXMA-MX725" manufacturer="Canon" model="9000720" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX726" driver="bjc-PIXMA-MX726" manufacturer="Canon" model="9000720" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX727" driver="bjc-PIXMA-MX727" manufacturer="Canon" model="9000720" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX728" driver="bjc-PIXMA-MX728" manufacturer="Canon" model="9000720" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX850 family--> - <printer translate="name" name="Canon MX850 series" driver="bjc-MX850-series" manufacturer="Canon" model="9000850" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX850-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX850" driver="bjc-MULTIPASS-MX850" manufacturer="Canon" model="9000850" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX850">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MX850" driver="bjc-PIXUS-MX850" manufacturer="Canon" model="9000850" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MX850">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX850 series" driver="bjc-MX850-series" manufacturer="Canon" model="9000850" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX850" driver="bjc-MULTIPASS-MX850" manufacturer="Canon" model="9000850" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MX850" driver="bjc-PIXUS-MX850" manufacturer="Canon" model="9000850" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX860 family --> - <printer translate="name" name="Canon MX860 series" driver="bjc-MX860-series" manufacturer="Canon" model="9000860" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX860-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX860" driver="bjc-MULTIPASS-MX860" manufacturer="Canon" model="9000860" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX860">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MX860" driver="bjc-PIXUS-MX860" manufacturer="Canon" model="9000860" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MX860">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX868" driver="bjc-PIXMA-MX868" manufacturer="Canon" model="9000860" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX868">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX860 series" driver="bjc-MX860-series" manufacturer="Canon" model="9000860" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX860" driver="bjc-MULTIPASS-MX860" manufacturer="Canon" model="9000860" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MX860" driver="bjc-PIXUS-MX860" manufacturer="Canon" model="9000860" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX868" driver="bjc-PIXMA-MX868" manufacturer="Canon" model="9000860" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX870 family --> - <printer translate="name" name="Canon MX870 series" driver="bjc-MX870-series" manufacturer="Canon" model="9000870" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX870-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX870" driver="bjc-MULTIPASS-MX870" manufacturer="Canon" model="9000870" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX870">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MX870" driver="bjc-PIXUS-MX870" manufacturer="Canon" model="9000870" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MX870">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX876" driver="bjc-PIXMA-MX876" manufacturer="Canon" model="9000870" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX876">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX870 series" driver="bjc-MX870-series" manufacturer="Canon" model="9000870" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX870" driver="bjc-MULTIPASS-MX870" manufacturer="Canon" model="9000870" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MX870" driver="bjc-PIXUS-MX870" manufacturer="Canon" model="9000870" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX876" driver="bjc-PIXMA-MX876" manufacturer="Canon" model="9000870" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX880 family --> - <printer translate="name" name="Canon MX880 series" driver="bjc-MX880-series" manufacturer="Canon" model="9000880" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX880-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX880" driver="bjc-MULTIPASS-MX880" manufacturer="Canon" model="9000880" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX880">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MX882" driver="bjc-PIXMA-MX882" manufacturer="Canon" model="9000880" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX882">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MX883" driver="bjc-PIXUS-MX883" manufacturer="Canon" model="9000880" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MX883">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX884" driver="bjc-PIXMA-MX884" manufacturer="Canon" model="9000880" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX884">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX885" driver="bjc-PIXMA-MX885" manufacturer="Canon" model="9000880" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX885">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX886" driver="bjc-PIXMA-MX886" manufacturer="Canon" model="9000880" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX886">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX888" driver="bjc-PIXMA-MX888" manufacturer="Canon" model="9000880" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX888">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX880 series" driver="bjc-MX880-series" manufacturer="Canon" model="9000880" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX880" driver="bjc-MULTIPASS-MX880" manufacturer="Canon" model="9000880" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MX882" driver="bjc-PIXMA-MX882" manufacturer="Canon" model="9000880" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MX883" driver="bjc-PIXUS-MX883" manufacturer="Canon" model="9000880" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX884" driver="bjc-PIXMA-MX884" manufacturer="Canon" model="9000880" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX885" driver="bjc-PIXMA-MX885" manufacturer="Canon" model="9000880" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX886" driver="bjc-PIXMA-MX886" manufacturer="Canon" model="9000880" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX888" driver="bjc-PIXMA-MX888" manufacturer="Canon" model="9000880" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX890 family --> - <printer translate="name" name="Canon MX890 series" driver="bjc-MX890-series" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX890-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX890" driver="bjc-MULTIPASS-MX890" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX890">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA MX892" driver="bjc-PIXMA-MX892" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX892">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MX893" driver="bjc-PIXUS-MX893" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MX893">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX894" driver="bjc-PIXMA-MX894" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX894">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX895" driver="bjc-PIXMA-MX895" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX895">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX897" driver="bjc-PIXMA-MX897" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX897">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX898" driver="bjc-PIXMA-MX898" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX898">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX890 series" driver="bjc-MX890-series" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX890" driver="bjc-MULTIPASS-MX890" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA MX892" driver="bjc-PIXMA-MX892" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MX893" driver="bjc-PIXUS-MX893" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX894" driver="bjc-PIXMA-MX894" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX895" driver="bjc-PIXMA-MX895" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX897" driver="bjc-PIXMA-MX897" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX898" driver="bjc-PIXMA-MX898" manufacturer="Canon" model="9000710" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX920 family --> - <printer translate="name" name="Canon MX920 series" driver="bjc-MX920-series" manufacturer="Canon" model="9000920" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX920-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX922" driver="bjc-PIXMA-MX922" manufacturer="Canon" model="9000920" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX922">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXUS MX923" driver="bjc-PIXUS-MX923" manufacturer="Canon" model="9000920" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MX923">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX924" driver="bjc-PIXMA-MX924" manufacturer="Canon" model="9000920" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX924">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX925" driver="bjc-PIXMA-MX925" manufacturer="Canon" model="9000920" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX925">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX926" driver="bjc-PIXMA-MX926" manufacturer="Canon" model="9000920" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX926">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX927" driver="bjc-PIXMA-MX927" manufacturer="Canon" model="9000920" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX927">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX928" driver="bjc-PIXMA-MX928" manufacturer="Canon" model="9000920" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-MX928">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX920 series" driver="bjc-MX920-series" manufacturer="Canon" model="9000920" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX922" driver="bjc-PIXMA-MX922" manufacturer="Canon" model="9000920" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS MX923" driver="bjc-PIXUS-MX923" manufacturer="Canon" model="9000920" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX924" driver="bjc-PIXMA-MX924" manufacturer="Canon" model="9000920" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX925" driver="bjc-PIXMA-MX925" manufacturer="Canon" model="9000920" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX926" driver="bjc-PIXMA-MX926" manufacturer="Canon" model="9000920" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX927" driver="bjc-PIXMA-MX927" manufacturer="Canon" model="9000920" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX928" driver="bjc-PIXMA-MX928" manufacturer="Canon" model="9000920" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MX7600 family --> - <printer translate="name" name="Canon MX7600 series" driver="bjc-MX7600-series" manufacturer="Canon" model="9007600" parameters="PIXMA_iP4000_params" foomaticid="Canon-MX7600-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA MX7600" driver="bjc-MULTIPASS-MX7600" manufacturer="Canon" model="9007600" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-MX7600">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXUS MX7600" driver="bjc-PIXUS-MX7600" manufacturer="Canon" model="9007600" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXUS-MX7600">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MX7600 series" driver="bjc-MX7600-series" manufacturer="Canon" model="9007600" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA MX7600" driver="bjc-MULTIPASS-MX7600" manufacturer="Canon" model="9007600" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXUS MX7600" driver="bjc-PIXUS-MX7600" manufacturer="Canon" model="9007600" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon E400 family --> - <printer translate="name" name="Canon E400 series" driver="bjc-E400-series" manufacturer="Canon" model="12000400" parameters="PIXMA_iP4000_params" foomaticid="Canon-E400-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E400" driver="bjc-PIXMA-E400" manufacturer="Canon" model="12000400" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E400">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E401" driver="bjc-PIXMA-E401" manufacturer="Canon" model="12000400" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E401">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E404" driver="bjc-PIXMA-E404" manufacturer="Canon" model="12000400" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E404">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E408" driver="bjc-PIXMA-E408" manufacturer="Canon" model="12000400" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E408">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E409" driver="bjc-PIXMA-E409" manufacturer="Canon" model="12000400" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E409">EXPERIMENTAL</printer> + <printer translate="name" name="Canon E400 series" driver="bjc-E400-series" manufacturer="Canon" model="12000400" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E400" driver="bjc-PIXMA-E400" manufacturer="Canon" model="12000400" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E401" driver="bjc-PIXMA-E401" manufacturer="Canon" model="12000400" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E404" driver="bjc-PIXMA-E404" manufacturer="Canon" model="12000400" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E408" driver="bjc-PIXMA-E408" manufacturer="Canon" model="12000400" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E409" driver="bjc-PIXMA-E409" manufacturer="Canon" model="12000400" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon E460 family --> - <printer translate="name" name="Canon E460 series" driver="bjc-E460-series" manufacturer="Canon" model="12000460" parameters="PIXMA_iP4000_params" foomaticid="Canon-E460-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E460" driver="bjc-PIXMA-E460" manufacturer="Canon" model="12000460" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E460">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E461" driver="bjc-PIXMA-E461" manufacturer="Canon" model="12000460" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E461">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E464" driver="bjc-PIXMA-E464" manufacturer="Canon" model="12000460" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E464">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E468" driver="bjc-PIXMA-E468" manufacturer="Canon" model="12000460" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E468">EXPERIMENTAL</printer> + <printer translate="name" name="Canon E460 series" driver="bjc-E460-series" manufacturer="Canon" model="12000460" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E460" driver="bjc-PIXMA-E460" manufacturer="Canon" model="12000460" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E461" driver="bjc-PIXMA-E461" manufacturer="Canon" model="12000460" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E464" driver="bjc-PIXMA-E464" manufacturer="Canon" model="12000460" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E468" driver="bjc-PIXMA-E468" manufacturer="Canon" model="12000460" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon E480 family --> - <printer translate="name" name="Canon E480 series" driver="bjc-E480-series" manufacturer="Canon" model="12000480" parameters="PIXMA_iP4000_params" foomaticid="Canon-E480-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E480" driver="bjc-PIXMA-E480" manufacturer="Canon" model="12000480" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E480">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E481" driver="bjc-PIXMA-E481" manufacturer="Canon" model="12000480" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E481">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E484" driver="bjc-PIXMA-E484" manufacturer="Canon" model="12000480" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E484">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E488" driver="bjc-PIXMA-E488" manufacturer="Canon" model="12000480" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E488">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E489" driver="bjc-PIXMA-E489" manufacturer="Canon" model="12000480" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E489">EXPERIMENTAL</printer> + <printer translate="name" name="Canon E480 series" driver="bjc-E480-series" manufacturer="Canon" model="12000480" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E480" driver="bjc-PIXMA-E480" manufacturer="Canon" model="12000480" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E481" driver="bjc-PIXMA-E481" manufacturer="Canon" model="12000480" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E484" driver="bjc-PIXMA-E484" manufacturer="Canon" model="12000480" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E488" driver="bjc-PIXMA-E488" manufacturer="Canon" model="12000480" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E489" driver="bjc-PIXMA-E489" manufacturer="Canon" model="12000480" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon E500 family --> - <printer translate="name" name="Canon E500 series" driver="bjc-E500-series" manufacturer="Canon" model="12000500" parameters="PIXMA_iP4000_params" foomaticid="Canon-E500-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E500" driver="bjc-MULTIPASS-E500" manufacturer="Canon" model="12000500" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-E500">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> + <printer translate="name" name="Canon E500 series" driver="bjc-E500-series" manufacturer="Canon" model="12000500" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E500" driver="bjc-MULTIPASS-E500" manufacturer="Canon" model="12000500" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> <!-- Canon E510 family --> - <printer translate="name" name="Canon E510 series" driver="bjc-E510-series" manufacturer="Canon" model="12000510" parameters="PIXMA_iP4000_params" foomaticid="Canon-E510-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E510" driver="bjc-PIXMA-E510" manufacturer="Canon" model="12000510" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E510">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E514" driver="bjc-PIXMA-E514" manufacturer="Canon" model="12000510" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E514">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E518" driver="bjc-PIXMA-E518" manufacturer="Canon" model="12000510" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E518">EXPERIMENTAL</printer> + <printer translate="name" name="Canon E510 series" driver="bjc-E510-series" manufacturer="Canon" model="12000510" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E510" driver="bjc-PIXMA-E510" manufacturer="Canon" model="12000510" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E514" driver="bjc-PIXMA-E514" manufacturer="Canon" model="12000510" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E518" driver="bjc-PIXMA-E518" manufacturer="Canon" model="12000510" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon E560 family --> - <printer translate="name" name="Canon E560 series" driver="bjc-E560-series" manufacturer="Canon" model="12000560" parameters="PIXMA_iP4000_params" foomaticid="Canon-E560-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E560" driver="bjc-PIXMA-E560" manufacturer="Canon" model="12000560" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E560">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E568" driver="bjc-PIXMA-E568" manufacturer="Canon" model="12000560" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E568">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E569" driver="bjc-PIXMA-E569" manufacturer="Canon" model="12000560" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E569">EXPERIMENTAL</printer> + <printer translate="name" name="Canon E560 series" driver="bjc-E560-series" manufacturer="Canon" model="12000560" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E560" driver="bjc-PIXMA-E560" manufacturer="Canon" model="12000560" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E568" driver="bjc-PIXMA-E568" manufacturer="Canon" model="12000560" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E569" driver="bjc-PIXMA-E569" manufacturer="Canon" model="12000560" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon E600 family --> - <printer translate="name" name="Canon E600 series" driver="bjc-E600-series" manufacturer="Canon" model="12000600" parameters="PIXMA_iP4000_params" foomaticid="Canon-E600-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E600" driver="bjc-MULTIPASS-E600" manufacturer="Canon" model="12000600" parameters="PIXMA_iP4000_params" foomaticid="Canon-MULTIPASS-E600">EXPERIMENTAL</printer><!-- driver and foomaticid legacy names used --> - <printer translate="name" name="Canon PIXMA E608" driver="bjc-PIXMA-E608" manufacturer="Canon" model="12000600" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E608">EXPERIMENTAL</printer> + <printer translate="name" name="Canon E600 series" driver="bjc-E600-series" manufacturer="Canon" model="12000600" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E600" driver="bjc-MULTIPASS-E600" manufacturer="Canon" model="12000600" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer><!-- driver legacy names used --> + <printer translate="name" name="Canon PIXMA E608" driver="bjc-PIXMA-E608" manufacturer="Canon" model="12000600" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon E610 family --> - <printer translate="name" name="Canon E610 series" driver="bjc-E610-series" manufacturer="Canon" model="12000610" parameters="PIXMA_iP4000_params" foomaticid="Canon-E610-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E610" driver="bjc-PIXMA-E610" manufacturer="Canon" model="12000610" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E610">EXPERIMENTAL</printer> - <printer translate="name" name="Canon PIXMA E618" driver="bjc-PIXMA-E618" manufacturer="Canon" model="12000610" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-E618">EXPERIMENTAL</printer> + <printer translate="name" name="Canon E610 series" driver="bjc-E610-series" manufacturer="Canon" model="12000610" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E610" driver="bjc-PIXMA-E610" manufacturer="Canon" model="12000610" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA E618" driver="bjc-PIXMA-E618" manufacturer="Canon" model="12000610" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon PIXMA P200 --> - <printer translate="name" name="Canon PIXMA P200" driver="bjc-PIXMA-P200" manufacturer="Canon" model="13000200" parameters="PIXMA_iP4000_params" foomaticid="Canon-PIXMA-P200">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXMA P200" driver="bjc-PIXMA-P200" manufacturer="Canon" model="13000200" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MAXIFY iB4000 family --> - <printer translate="name" name="Canon iB4000 series" driver="bjc-iB4000-series" manufacturer="Canon" model="14004000" parameters="PIXMA_iP4000_params" foomaticid="Canon-iB4000-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY iB4010" driver="bjc-MAXIFY-iB4010" manufacturer="Canon" model="14004000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-iB4010">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY iB4020" driver="bjc-MAXIFY-iB4020" manufacturer="Canon" model="14004000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-iB4020">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY iB4030" driver="bjc-MAXIFY-iB4030" manufacturer="Canon" model="14004000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-iB4030">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY iB4040" driver="bjc-MAXIFY-iB4040" manufacturer="Canon" model="14004000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-iB4040">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY iB4050" driver="bjc-MAXIFY-iB4050" manufacturer="Canon" model="14004000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-iB4050">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY iB4060" driver="bjc-MAXIFY-iB4060" manufacturer="Canon" model="14004000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-iB4060">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY iB4070" driver="bjc-MAXIFY-iB4070" manufacturer="Canon" model="14004000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-iB4070">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY iB4080" driver="bjc-MAXIFY-iB4080" manufacturer="Canon" model="14004000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-iB4080">EXPERIMENTAL</printer> + <printer translate="name" name="Canon iB4000 series" driver="bjc-iB4000-series" manufacturer="Canon" model="14004000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY iB4010" driver="bjc-MAXIFY-iB4010" manufacturer="Canon" model="14004000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY iB4020" driver="bjc-MAXIFY-iB4020" manufacturer="Canon" model="14004000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY iB4030" driver="bjc-MAXIFY-iB4030" manufacturer="Canon" model="14004000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY iB4040" driver="bjc-MAXIFY-iB4040" manufacturer="Canon" model="14004000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY iB4050" driver="bjc-MAXIFY-iB4050" manufacturer="Canon" model="14004000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY iB4060" driver="bjc-MAXIFY-iB4060" manufacturer="Canon" model="14004000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY iB4070" driver="bjc-MAXIFY-iB4070" manufacturer="Canon" model="14004000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY iB4080" driver="bjc-MAXIFY-iB4080" manufacturer="Canon" model="14004000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MAXIFY MB2000 family --> - <printer translate="name" name="Canon MB2000 series" driver="bjc-MB2000-series" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MB2000-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB2010" driver="bjc-MAXIFY-MB2010" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB2010">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB2020" driver="bjc-MAXIFY-MB2020" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB2020">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB2030" driver="bjc-MAXIFY-MB2030" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB2030">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB2040" driver="bjc-MAXIFY-MB2040" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB2040">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB2050" driver="bjc-MAXIFY-MB2050" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB2050">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB2060" driver="bjc-MAXIFY-MB2060" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB2060">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MB2000 series" driver="bjc-MB2000-series" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB2010" driver="bjc-MAXIFY-MB2010" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB2020" driver="bjc-MAXIFY-MB2020" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB2030" driver="bjc-MAXIFY-MB2030" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB2040" driver="bjc-MAXIFY-MB2040" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB2050" driver="bjc-MAXIFY-MB2050" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB2060" driver="bjc-MAXIFY-MB2060" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MAXIFY MB2300 family --> - <printer translate="name" name="Canon MB2300 series" driver="bjc-MB2300-series" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MB2300-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB2320" driver="bjc-MAXIFY-MB2320" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB2320">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB2330" driver="bjc-MAXIFY-MB2330" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB2330">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB2340" driver="bjc-MAXIFY-MB2340" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB2340">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB2350" driver="bjc-MAXIFY-MB2350" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB2350">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB2360" driver="bjc-MAXIFY-MB2360" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB2360">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB2390" driver="bjc-MAXIFY-MB2390" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB2390">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MB2300 series" driver="bjc-MB2300-series" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB2320" driver="bjc-MAXIFY-MB2320" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB2330" driver="bjc-MAXIFY-MB2330" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB2340" driver="bjc-MAXIFY-MB2340" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB2350" driver="bjc-MAXIFY-MB2350" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB2360" driver="bjc-MAXIFY-MB2360" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB2390" driver="bjc-MAXIFY-MB2390" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MAXIFY MB5000 family --> - <printer translate="name" name="Canon MB5000 series" driver="bjc-MB5000-series" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MB5000-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB5020" driver="bjc-MAXIFY-MB5020" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB5020">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB5030" driver="bjc-MAXIFY-MB5030" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB5030">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB5040" driver="bjc-MAXIFY-MB5040" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB5040">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB5050" driver="bjc-MAXIFY-MB5050" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB5050">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB5060" driver="bjc-MAXIFY-MB5060" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB5060">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB5070" driver="bjc-MAXIFY-MB5070" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB5070">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB5080" driver="bjc-MAXIFY-MB5080" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB5080">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB5090" driver="bjc-MAXIFY-MB5090" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB5090">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MB5000 series" driver="bjc-MB5000-series" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB5020" driver="bjc-MAXIFY-MB5020" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB5030" driver="bjc-MAXIFY-MB5030" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB5040" driver="bjc-MAXIFY-MB5040" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB5050" driver="bjc-MAXIFY-MB5050" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB5060" driver="bjc-MAXIFY-MB5060" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB5070" driver="bjc-MAXIFY-MB5070" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB5080" driver="bjc-MAXIFY-MB5080" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB5090" driver="bjc-MAXIFY-MB5090" manufacturer="Canon" model="15002000" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- Canon MAXIFY MB5300 family --> - <printer translate="name" name="Canon MB5300 series" driver="bjc-MB5300-series" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MB5300-series">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB5310" driver="bjc-MAXIFY-MB5310" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB5310">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB5320" driver="bjc-MAXIFY-MB5320" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB5320">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB5330" driver="bjc-MAXIFY-MB5330" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB5330">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB5340" driver="bjc-MAXIFY-MB5340" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB5340">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB5350" driver="bjc-MAXIFY-MB5350" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB5350">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB5360" driver="bjc-MAXIFY-MB5360" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB5360">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB5370" driver="bjc-MAXIFY-MB5370" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB5370">EXPERIMENTAL</printer> - <printer translate="name" name="Canon MAXIFY MB5390" driver="bjc-MAXIFY-MB5390" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params" foomaticid="Canon-MAXIFY-MB5390">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MB5300 series" driver="bjc-MB5300-series" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB5310" driver="bjc-MAXIFY-MB5310" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB5320" driver="bjc-MAXIFY-MB5320" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB5330" driver="bjc-MAXIFY-MB5330" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB5340" driver="bjc-MAXIFY-MB5340" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB5350" driver="bjc-MAXIFY-MB5350" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB5360" driver="bjc-MAXIFY-MB5360" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB5370" driver="bjc-MAXIFY-MB5370" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon MAXIFY MB5390" driver="bjc-MAXIFY-MB5390" manufacturer="Canon" model="15002300" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> <!-- --> - <printer translate="name" name="Canon PIXUS 50i" driver="bjc-50i" manufacturer="Canon" model="2000050" parameters="density_800_params" foomaticid="Canon-50i" /> - <printer translate="name" name="Canon PIXUS 80i" driver="bjc-80i" manufacturer="Canon" model="2000080" parameters="density_800_params" foomaticid="Canon-80i" /> - <printer translate="name" name="Canon PIXUS 450i" driver="bjc-450i" manufacturer="Canon" model="2000450" parameters="density_800_params" foomaticid="Canon-450i" /> - <printer translate="name" name="Canon PIXUS 455i" driver="bjc-455i" manufacturer="Canon" model="2000455" parameters="density_800_params" foomaticid="Canon-455i" /> - <printer translate="name" name="Canon PIXUS 470PD" driver="bjc-470PD" manufacturer="Canon" model="2000450" parameters="density_800_params" foomaticid="Canon-470PD" /> - <printer translate="name" name="Canon PIXUS 475PD" driver="bjc-475PD" manufacturer="Canon" model="2000455" parameters="density_800_params" foomaticid="Canon-475PD" /> - <printer translate="name" name="Canon PIXUS 550i" driver="bjc-550i" manufacturer="Canon" model="2000550" parameters="density_800_params" foomaticid="Canon-550i" /> - <printer translate="name" name="Canon PIXUS 560i" driver="bjc-560i" manufacturer="Canon" model="2000560" parameters="gamma_6_density_800_params" foomaticid="Canon-560i" /> - <printer translate="name" name="Canon PIXUS 850i" driver="bjc-850i" manufacturer="Canon" model="2000850" parameters="PIXMA_iP4000_params" foomaticid="Canon-850i" /> - <printer translate="name" name="Canon PIXUS 860i" driver="bjc-860i" manufacturer="Canon" model="2000860" parameters="PIXMA_iP4000_params" foomaticid="Canon-860i" /> - <printer translate="name" name="Canon PIXUS 865R" driver="bjc-865R" manufacturer="Canon" model="2000860" parameters="PIXMA_iP4000_params" foomaticid="Canon-865R" /> - <printer translate="name" name="Canon PIXUS 900PD" driver="bjc-900PD" manufacturer="Canon" model="2000900" parameters="PIXMA_iP4000_params" foomaticid="Canon-900PD" /> - <printer translate="name" name="Canon PIXUS 950i" driver="bjc-950i" manufacturer="Canon" model="2000950" parameters="PIXMA_iP4000_params" foomaticid="Canon-950i" /> - <printer translate="name" name="Canon PIXUS 960i" driver="bjc-960i" manufacturer="Canon" model="2000960" parameters="PIXMA_iP4000_params" foomaticid="Canon-960i" /> - <printer translate="name" name="Canon PIXUS 990i" driver="bjc-990i" manufacturer="Canon" model="2000990" parameters="PIXMA_iP4000_params" foomaticid="Canon-990i" /> - <printer translate="name" name="Canon PIXUS 6100i" driver="bjc-6100i" manufacturer="Canon" model="2006100" parameters="PIXMA_iP4000_params" foomaticid="Canon-6100i" /> - <printer translate="name" name="Canon PIXUS 6500i" driver="bjc-6500i" manufacturer="Canon" model="2006100" parameters="PIXMA_iP4000_params" foomaticid="Canon-6500i" /> - <printer translate="name" name="Canon PIXUS 9100i" driver="bjc-9100i" manufacturer="Canon" model="2009100" parameters="PIXMA_iP4000_params" foomaticid="Canon-9100i" /> - <printer translate="name" name="Canon PIXUS 9900i" driver="bjc-9900i" manufacturer="Canon" model="2009900" parameters="PIXMA_iP4000_params" foomaticid="Canon-9900i" /> - <printer translate="name" name="Canon i70" driver="bjc-i70" manufacturer="Canon" model="2000050" parameters="density_800_params" foomaticid="Canon-i70" /> - <printer translate="name" name="Canon i80" driver="bjc-i80" manufacturer="Canon" model="2000080" parameters="density_800_params" foomaticid="Canon-i80" /> - <printer translate="name" name="Canon i450" driver="bjc-i450" manufacturer="Canon" model="2000450" parameters="density_800_params" foomaticid="Canon-i450">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i450X" driver="bjc-i450X" manufacturer="Canon" model="2000450" parameters="density_800_params" foomaticid="Canon-i450X">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i455" driver="bjc-i455" manufacturer="Canon" model="2000455" parameters="density_800_params" foomaticid="Canon-i455">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i455X" driver="bjc-i455X" manufacturer="Canon" model="2000455" parameters="density_800_params" foomaticid="Canon-i455X">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i470D" driver="bjc-i470D" manufacturer="Canon" model="2000450" parameters="density_800_params" foomaticid="Canon-i470D">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i475D" driver="bjc-i475D" manufacturer="Canon" model="2000455" parameters="density_800_params" foomaticid="Canon-i475D">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i550" driver="bjc-i550" manufacturer="Canon" model="2000550" parameters="density_800_params" foomaticid="Canon-i550">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i550X" driver="bjc-i550X" manufacturer="Canon" model="2000550" parameters="density_800_params" foomaticid="Canon-i550X">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i560" driver="bjc-i560" manufacturer="Canon" model="2000560" parameters="gamma_6_density_800_params" foomaticid="Canon-i560">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i560X" driver="bjc-i560X" manufacturer="Canon" model="2000560" parameters="gamma_6_density_800_params" foomaticid="Canon-i560X">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i850old" driver="bjc-i850old" manufacturer="Canon" model="3003000" parameters="PIXMA_iP4000_params" foomaticid="Canon-i850old">Original printers are named with "old" appended</printer> - <printer translate="name" name="Canon i850" driver="bjc-i850" manufacturer="Canon" model="2000850" parameters="PIXMA_iP4000_params" foomaticid="Canon-i850">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i860old" driver="bjc-i860old" manufacturer="Canon" model="3004000" parameters="PIXMA_iP4000_params" foomaticid="Canon-i860old">Original printers are named with "old" appended</printer> - <printer translate="name" name="Canon i860" driver="bjc-i860" manufacturer="Canon" model="2000860" parameters="PIXMA_iP4000_params" foomaticid="Canon-i860">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i865old" driver="bjc-i865old" manufacturer="Canon" model="3004000" parameters="PIXMA_iP4000_params" foomaticid="Canon-i865old">Original printers are named with "old" appended</printer> - <printer translate="name" name="Canon i865" driver="bjc-i865" manufacturer="Canon" model="2000860" parameters="PIXMA_iP4000_params" foomaticid="Canon-i865">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i900D" driver="bjc-i900D" manufacturer="Canon" model="2000900" parameters="PIXMA_iP4000_params" foomaticid="Canon-i900D">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i905D" driver="bjc-i905D" manufacturer="Canon" model="2000900" parameters="PIXMA_iP4000_params" foomaticid="Canon-i905D">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i950" driver="bjc-i950" manufacturer="Canon" model="2000950" parameters="PIXMA_iP4000_params" foomaticid="Canon-i950">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i960" driver="bjc-i960" manufacturer="Canon" model="2000960" parameters="PIXMA_iP4000_params" foomaticid="Canon-i960">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i965" driver="bjc-i965" manufacturer="Canon" model="2000960" parameters="PIXMA_iP4000_params" foomaticid="Canon-i965">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i990" driver="bjc-i990" manufacturer="Canon" model="2000990" parameters="PIXMA_iP4000_params" foomaticid="Canon-i990">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i6100" driver="bjc-i6100" manufacturer="Canon" model="2006100" parameters="PIXMA_iP4000_params" foomaticid="Canon-i6100" /> - <printer translate="name" name="Canon i6500" driver="bjc-i6500" manufacturer="Canon" model="2006100" parameters="PIXMA_iP4000_params" foomaticid="Canon-i6500" /> - <printer translate="name" name="Canon i9100" driver="bjc-i9100" manufacturer="Canon" model="2009100" parameters="PIXMA_iP4000_params" foomaticid="Canon-i9100" /> - <printer translate="name" name="Canon i9900" driver="bjc-i9900" manufacturer="Canon" model="2009900" parameters="PIXMA_iP4000_params" foomaticid="Canon-i9900">EXPERIMENTAL</printer> - <printer translate="name" name="Canon i9950" driver="bjc-i9950" manufacturer="Canon" model="2009900" parameters="PIXMA_iP4000_params" foomaticid="Canon-i9950">EXPERIMENTAL</printer> + <printer translate="name" name="Canon PIXUS 50i" driver="bjc-50i" manufacturer="Canon" model="2000050" parameters="density_800_params" /> + <printer translate="name" name="Canon PIXUS 80i" driver="bjc-80i" manufacturer="Canon" model="2000080" parameters="density_800_params" /> + <printer translate="name" name="Canon PIXUS 450i" driver="bjc-450i" manufacturer="Canon" model="2000450" parameters="density_800_params" /> + <printer translate="name" name="Canon PIXUS 455i" driver="bjc-455i" manufacturer="Canon" model="2000455" parameters="density_800_params" /> + <printer translate="name" name="Canon PIXUS 470PD" driver="bjc-470PD" manufacturer="Canon" model="2000450" parameters="density_800_params" /> + <printer translate="name" name="Canon PIXUS 475PD" driver="bjc-475PD" manufacturer="Canon" model="2000455" parameters="density_800_params" /> + <printer translate="name" name="Canon PIXUS 550i" driver="bjc-550i" manufacturer="Canon" model="2000550" parameters="density_800_params" /> + <printer translate="name" name="Canon PIXUS 560i" driver="bjc-560i" manufacturer="Canon" model="2000560" parameters="gamma_6_density_800_params" /> + <printer translate="name" name="Canon PIXUS 850i" driver="bjc-850i" manufacturer="Canon" model="2000850" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon PIXUS 860i" driver="bjc-860i" manufacturer="Canon" model="2000860" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon PIXUS 865R" driver="bjc-865R" manufacturer="Canon" model="2000860" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon PIXUS 900PD" driver="bjc-900PD" manufacturer="Canon" model="2000900" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon PIXUS 950i" driver="bjc-950i" manufacturer="Canon" model="2000950" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon PIXUS 960i" driver="bjc-960i" manufacturer="Canon" model="2000960" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon PIXUS 990i" driver="bjc-990i" manufacturer="Canon" model="2000990" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon PIXUS 6100i" driver="bjc-6100i" manufacturer="Canon" model="2006100" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon PIXUS 6500i" driver="bjc-6500i" manufacturer="Canon" model="2006100" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon PIXUS 9100i" driver="bjc-9100i" manufacturer="Canon" model="2009100" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon PIXUS 9900i" driver="bjc-9900i" manufacturer="Canon" model="2009900" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon i70" driver="bjc-i70" manufacturer="Canon" model="2000050" parameters="density_800_params" /> + <printer translate="name" name="Canon i80" driver="bjc-i80" manufacturer="Canon" model="2000080" parameters="density_800_params" /> + <printer translate="name" name="Canon i450" driver="bjc-i450" manufacturer="Canon" model="2000450" parameters="density_800_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i450X" driver="bjc-i450X" manufacturer="Canon" model="2000450" parameters="density_800_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i455" driver="bjc-i455" manufacturer="Canon" model="2000455" parameters="density_800_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i455X" driver="bjc-i455X" manufacturer="Canon" model="2000455" parameters="density_800_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i470D" driver="bjc-i470D" manufacturer="Canon" model="2000450" parameters="density_800_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i475D" driver="bjc-i475D" manufacturer="Canon" model="2000455" parameters="density_800_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i550" driver="bjc-i550" manufacturer="Canon" model="2000550" parameters="density_800_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i550X" driver="bjc-i550X" manufacturer="Canon" model="2000550" parameters="density_800_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i560" driver="bjc-i560" manufacturer="Canon" model="2000560" parameters="gamma_6_density_800_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i560X" driver="bjc-i560X" manufacturer="Canon" model="2000560" parameters="gamma_6_density_800_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i850old" driver="bjc-i850old" manufacturer="Canon" model="3003000" parameters="PIXMA_iP4000_params">Original printers are named with "old" appended</printer> + <printer translate="name" name="Canon i850" driver="bjc-i850" manufacturer="Canon" model="2000850" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i860old" driver="bjc-i860old" manufacturer="Canon" model="3004000" parameters="PIXMA_iP4000_params">Original printers are named with "old" appended</printer> + <printer translate="name" name="Canon i860" driver="bjc-i860" manufacturer="Canon" model="2000860" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i865old" driver="bjc-i865old" manufacturer="Canon" model="3004000" parameters="PIXMA_iP4000_params">Original printers are named with "old" appended</printer> + <printer translate="name" name="Canon i865" driver="bjc-i865" manufacturer="Canon" model="2000860" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i900D" driver="bjc-i900D" manufacturer="Canon" model="2000900" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i905D" driver="bjc-i905D" manufacturer="Canon" model="2000900" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i950" driver="bjc-i950" manufacturer="Canon" model="2000950" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i960" driver="bjc-i960" manufacturer="Canon" model="2000960" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i965" driver="bjc-i965" manufacturer="Canon" model="2000960" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i990" driver="bjc-i990" manufacturer="Canon" model="2000990" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i6100" driver="bjc-i6100" manufacturer="Canon" model="2006100" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon i6500" driver="bjc-i6500" manufacturer="Canon" model="2006100" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon i9100" driver="bjc-i9100" manufacturer="Canon" model="2009100" parameters="PIXMA_iP4000_params" /> + <printer translate="name" name="Canon i9900" driver="bjc-i9900" manufacturer="Canon" model="2009900" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + <printer translate="name" name="Canon i9950" driver="bjc-i9950" manufacturer="Canon" model="2009900" parameters="PIXMA_iP4000_params">EXPERIMENTAL</printer> + </family> + <family name="dpl"> + <parameters name="dpl_params"> + <parameter type="float" name="Gamma">1.000</parameter> + <parameter type="float" name="Density">1.000</parameter> + </parameters> + <printer translate="name" name="Datamax-O'Neil I4212e Mark II" deviceid="MFG:Datamax-O'Neil;CMD:DPL;MDL:I4212e Mark II;" color="false" driver="datamax_oneil_I4212e" manufacturer="Datamax O'Neil" model="10017" parameters="dpl_params" /> + <printer translate="name" name="Datamax-O'Neil I4310e Mark II" deviceid="MFG:Datamax-O'Neil;CMD:DPL;MDL:I4310e Mark II;" color="false" driver="datamax_oneil_I4310e" manufacturer="Datamax O'Neil" model="10018" parameters="dpl_params" /> + <printer translate="name" name="Datamax-O'Neil I4606e Mark II" deviceid="MFG:Datamax-O'Neil;CMD:DPL;MDL:I4606e Mark II;" color="false" driver="datamax_oneil_I4606e" manufacturer="Datamax O'Neil" model="10020" parameters="dpl_params" /> + <printer translate="name" name="Datamax-O'Neil E4204B Mark III" deviceid="MFG:Datamax-O'Neil;CMD:DPL;MDL:E4204B Mark III;" color="false" driver="datamax_oneil_E4204B" manufacturer="Datamax O'Neil" model="10021" parameters="dpl_params" /> + <printer translate="name" name="Datamax-O'Neil E4304B Mark III" deviceid="MFG:Datamax-O'Neil;CMD:DPL;MDL:E4304B Mark III;" color="false" driver="datamax_oneil_E4304B" manufacturer="Datamax O'Neil" model="10022" parameters="dpl_params" /> + <printer translate="name" name="Datamax-O'Neil E4205A Mark III" deviceid="MFG:Datamax-O'Neil;CMD:DPL;MDL:E4205A Mark III;" color="false" driver="datamax_oneil_E4205A" manufacturer="Datamax O'Neil" model="10023" parameters="dpl_params" /> + <printer translate="name" name="Datamax-O'Neil E4305A Mark III" deviceid="MFG:Datamax-O'Neil;CMD:DPL;MDL:E4305A Mark III;" color="false" driver="datamax_oneil_E4305A" manufacturer="Datamax O'Neil" model="10024" parameters="dpl_params" /> + <printer translate="name" name="Datamax-O'Neil E4206P Mark III" deviceid="MFG:Datamax-O'Neil;CMD:DPL;MDL:E4206P Mark III;" color="false" driver="datamax_oneil_E4206P" manufacturer="Datamax O'Neil" model="10025" parameters="dpl_params" /> + <printer translate="name" name="Datamax-O'Neil E4305P Mark III" deviceid="MFG:Datamax-O'Neil;CMD:DPL;MDL:E4305P Mark III;" color="false" driver="datamax_oneil_E4305P" manufacturer="Datamax O'Neil" model="10026" parameters="dpl_params" /> + <printer translate="name" name="Datamax-O'Neil E4206L Mark III" deviceid="MFG:Datamax-O'Neil;CMD:DPL;MDL:E4206L Mark III;" color="false" driver="datamax_oneil_E4206L" manufacturer="Datamax O'Neil" model="10027" parameters="dpl_params" /> + <printer translate="name" name="Datamax-O'Neil E4305L Mark III" deviceid="MFG:Datamax-O'Neil;CMD:DPL;MDL:E4305L Mark III;" color="false" driver="datamax_oneil_E4305L" manufacturer="Datamax O'Neil" model="10028" parameters="dpl_params" /> + <printer translate="name" name="Datamax-O'Neil RL3e" deviceid="MFG:Datamax-O'Neil;CMD:DPL;MDL:RL3e;" color="false" driver="datamax_oneil_RL3e" manufacturer="Datamax O'Neil" model="10029" parameters="dpl_params" /> + <printer translate="name" name="Datamax-O'Neil RL4e" deviceid="MFG:Datamax-O'Neil;CMD:DPL;MDL:RL4e;" color="false" driver="datamax_oneil_RL4e" manufacturer="Datamax O'Neil" model="10030" parameters="dpl_params" /> </family> <family name="escp2"> <parameters name="standard_params"> @@ -1304,540 +1322,553 @@ <parameter type="float" name="Gamma">0.470</parameter> <parameter type="float" name="BlackDensity">0.8</parameter> </parameters> - <printer translate="name" name="Epson Artisan 50" driver="escp2-artisan50" manufacturer="Epson" model="97" parameters="claria_params" foomaticid="Epson-Artisan_50" /> - <printer translate="name" name="Epson Artisan 700" driver="escp2-artisan700" manufacturer="Epson" model="96" parameters="claria_params" foomaticid="Epson-Artisan_700" /> - <printer translate="name" name="Epson Artisan 710" driver="escp2-artisan710" manufacturer="Epson" model="96" parameters="claria_params" foomaticid="Epson-Artisan_710" /> - <printer translate="name" name="Epson Artisan 800" driver="escp2-artisan800" manufacturer="Epson" model="96" parameters="claria_params" foomaticid="Epson-Artisan_800" /> - <printer translate="name" name="Epson Artisan 810" driver="escp2-artisan810" manufacturer="Epson" model="96" parameters="claria_params" foomaticid="Epson-Artisan_810" /> - <printer translate="name" name="Epson Artisan 835" driver="escp2-artisan835" manufacturer="Epson" model="96" parameters="claria_params" foomaticid="Epson-Artisan_835" /> - <printer translate="name" name="Epson B-300" driver="escp2-b300" manufacturer="Epson" model="87" parameters="standard_params" foomaticid="Epson-B300" /> - <printer translate="name" name="Epson B-308" driver="escp2-b308" manufacturer="Epson" model="87" parameters="standard_params" foomaticid="Epson-B308" /> - <printer translate="name" name="Epson B-310" driver="escp2-b310" manufacturer="Epson" model="87" parameters="standard_params" foomaticid="Epson-B310" /> - <printer translate="name" name="Epson B-310N" driver="escp2-b310n" manufacturer="Epson" model="87" parameters="standard_params" foomaticid="Epson-B310N" /> - <printer translate="name" name="Epson B-500DN" driver="escp2-b500dn" manufacturer="Epson" model="87" parameters="standard_params" foomaticid="Epson-B500DN" /> - <printer translate="name" name="Epson B-508DN" driver="escp2-b508dn" manufacturer="Epson" model="87" parameters="standard_params" foomaticid="Epson-B508DN" /> - <printer translate="name" name="Epson B-510DN" driver="escp2-b510dn" manufacturer="Epson" model="87" parameters="standard_params" foomaticid="Epson-B510DN" /> - <printer translate="name" name="Epson L120" driver="escp2-l120" manufacturer="Epson" model="80" parameters="cx3500_params" foomaticid="Epson-L120" /> - <printer translate="name" name="Epson L210" driver="escp2-l210" manufacturer="Epson" model="80" parameters="cx3500_params" foomaticid="Epson-L210" /> - <printer translate="name" name="Epson L1800" driver="escp2-l1800" manufacturer="Epson" model="122" parameters="cx3500_params" foomaticid="Epson-L1800" /> - <printer translate="name" name="Epson Stylus C20" deviceid="MFG:EPSON;MDL:Stylus C20;DES:EPSON Stylus C20;CMD:ESCPL2,BDC,D4;" driver="escp2-c20" manufacturer="Epson" model="42" parameters="480_params" foomaticid="Epson-Stylus_C20" /> - <printer translate="name" name="Epson Stylus C20SX" driver="escp2-c20sx" manufacturer="Epson" model="42" parameters="480_params" foomaticid="Epson-Stylus_C20SX" /> - <printer translate="name" name="Epson Stylus C20UX" deviceid="MFG:EPSON;MDL:Stylus C20;DES:EPSON Stylus C20;CMD:ESCPL2,BDC,D4;" driver="escp2-c20ux" manufacturer="Epson" model="42" parameters="480_params" foomaticid="Epson-Stylus_C20UX" /> - <printer translate="name" name="Epson Stylus C40" deviceid="MFG:EPSON;MDL:Stylus C40;DES:None;" driver="escp2-c40" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-Stylus_C40" /> - <printer translate="name" name="Epson Stylus C40SX" driver="escp2-c40sx" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-Stylus_C40SX" /> - <printer translate="name" name="Epson Stylus C40UX" driver="escp2-c40ux" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-Stylus_C40UX" /> - <printer translate="name" name="Epson Stylus C41" driver="escp2-c41" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-Stylus_C41" /> - <printer translate="name" name="Epson Stylus C41SX" driver="escp2-c41sx" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-Stylus_C41SX" /> - <printer translate="name" name="Epson Stylus C41UX" driver="escp2-c41ux" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-Stylus_C41UX" /> - <printer translate="name" name="Epson Stylus C42" deviceid="MFG:EPSON;MDL:Stylus C42;DES:EPSON Stylus C42;CMD:ESCPL2,BDC,D4;" driver="escp2-c42" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-Stylus_C42" /> - <printer translate="name" name="Epson Stylus C42SX" driver="escp2-c42sx" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-Stylus_C42SX" /> - <printer translate="name" name="Epson Stylus C42UX" deviceid="MFG:EPSON;MDL:Stylus C42;DES:EPSON Stylus C42;CMD:ESCPL2,BDC,D4;" driver="escp2-c42ux" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-Stylus_C42UX" /> - <printer translate="name" name="Epson Stylus C43" deviceid="MFG:EPSON;MDL:Stylus C43;DES:EPSON Stylus C43;CMD:ESCPL2,BDC,D4;" driver="escp2-c43" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-Stylus_C43" /> - <printer translate="name" name="Epson Stylus C43SX" deviceid="MFG:EPSON;MDL:Stylus C43;DES:EPSON Stylus C43;CMD:ESCPL2,BDC,D4;" driver="escp2-c43sx" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-Stylus_C43SX" /> - <printer translate="name" name="Epson Stylus C43UX" deviceid="MFG:EPSON;MDL:Stylus C43;DES:EPSON Stylus C43;CMD:ESCPL2,BDC,D4;" driver="escp2-c43ux" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-Stylus_C43UX" /> - <printer translate="name" name="Epson Stylus C44" deviceid="MFG:EPSON;MDL:Stylus C44;DES:EPSON Stylus C44;CMD:ESCPL2,BDC,D4;" driver="escp2-c44" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-Stylus_C44" /> - <printer translate="name" name="Epson Stylus C44SX" deviceid="MFG:EPSON;MDL:Stylus C44;DES:EPSON Stylus C44;CMD:ESCPL2,BDC,D4;" driver="escp2-c44sx" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-Stylus_C44SX" /> - <printer translate="name" name="Epson Stylus C44UX" deviceid="MFG:EPSON;MDL:Stylus C44;DES:EPSON Stylus C44;CMD:ESCPL2,BDC,D4;" driver="escp2-c44ux" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-Stylus_C44UX" /> - <printer translate="name" name="Epson Stylus C45" deviceid="MFG:EPSON;MDL:Stylus C45;DES:EPSON Stylus C45;CMD:ESCPL2,BDC,D4;" driver="escp2-c45" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-Stylus_C45" /> - <printer translate="name" name="Epson Stylus C46" deviceid="MFG:EPSON;MDL:Stylus C46;DES:EPSON Stylus C46;CMD:ESCPL2,BDC,D4;" driver="escp2-c46" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-Stylus_C46" /> - <printer translate="name" name="Epson Stylus C48" deviceid="MFG:EPSON;MDL:Stylus C48;DES:EPSON Stylus C48;CMD:ESCPL2,BDC,D4;" driver="escp2-c48" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-Stylus_C48" /> - <printer translate="name" name="Epson Stylus C50" driver="escp2-c50" manufacturer="Epson" model="56" parameters="480_params" foomaticid="Epson-Stylus_C50" /> - <printer translate="name" name="Epson Stylus C60" deviceid="MFG:EPSON;MDL:Stylus C60;DES:EPSON Stylus C60;CMD:ESCPL2,BDC,D4;" driver="escp2-c60" manufacturer="Epson" model="33" parameters="standard_params" foomaticid="Epson-Stylus_C60" /> - <printer translate="name" name="Epson Stylus C61" driver="escp2-c61" manufacturer="Epson" model="52" parameters="standard_params" foomaticid="Epson-Stylus_C61" /> - <printer translate="name" name="Epson Stylus C62" deviceid="MFG:EPSON;MDL:Stylus C62;DES:EPSON Stylus C62;CMD:ESCPL2,BDC,D4;" driver="escp2-c62" manufacturer="Epson" model="52" parameters="standard_params" foomaticid="Epson-Stylus_C62" /> - <printer translate="name" name="Epson Stylus C63" driver="escp2-c63" manufacturer="Epson" model="61" parameters="standard_params" foomaticid="Epson-Stylus_C63" /> - <printer translate="name" name="Epson Stylus C64" driver="escp2-c64" manufacturer="Epson" model="61" parameters="standard_params" foomaticid="Epson-Stylus_C64" /> - <printer translate="name" name="Epson Stylus C65" deviceid="MFG:EPSON;MDL:Stylus C65;DES:EPSON Stylus C65;CMD:ESCPL2,BDC,D4;" driver="escp2-c65" manufacturer="Epson" model="66" parameters="standard_params" foomaticid="Epson-Stylus_C65" /> - <printer translate="name" name="Epson Stylus C66" deviceid="MFG:EPSON;MDL:Stylus C66;DES:EPSON Stylus C66;CMD:ESCPL2,BDC,D4;" driver="escp2-c66" manufacturer="Epson" model="66" parameters="standard_params" foomaticid="Epson-Stylus_C66" /> - <printer translate="name" name="Epson Stylus C68" deviceid="MFG:EPSON;MDL:Stylus C68;DES:EPSON Stylus C68;CMD:ESCPL2,BDC,D4;" driver="escp2-c68" manufacturer="Epson" model="66" parameters="standard_params" foomaticid="Epson-Stylus_C68" /> - <printer translate="name" name="Epson Stylus C70" driver="escp2-c70" manufacturer="Epson" model="44" parameters="standard_params" foomaticid="Epson-Stylus_C70" /> - <printer translate="name" name="Epson Stylus C79" driver="escp2-c79" manufacturer="Epson" model="66" parameters="standard_params" foomaticid="Epson-Stylus_C79" /> - <printer translate="name" name="Epson Stylus C80" deviceid="MFG:EPSON;MDL:Stylus C80;DES:EPSON Stylus C80;CMD:ESCPL2,BDC,D4;" driver="escp2-c80" manufacturer="Epson" model="44" parameters="standard_params" foomaticid="Epson-Stylus_C80" /> - <printer translate="name" name="Epson Stylus C82" deviceid="MFG:EPSON;MDL:Stylus C82;DES:EPSON Stylus C82;CMD:ESCPL2,BDC,D4;" driver="escp2-c82" manufacturer="Epson" model="55" parameters="standard_params" foomaticid="Epson-Stylus_C82" /> - <printer translate="name" name="Epson Stylus C83" driver="escp2-c83" manufacturer="Epson" model="60" parameters="standard_params" foomaticid="Epson-Stylus_C83" /> - <printer translate="name" name="Epson Stylus C84" deviceid="MFG:EPSON;MDL:Stylus C84;DES:EPSON Stylus C84;CMD:ESCPL2,BDC,D4;" driver="escp2-c84" manufacturer="Epson" model="60" parameters="standard_params" foomaticid="Epson-Stylus_C84" /> - <printer translate="name" name="Epson Stylus C85" deviceid="MFG:EPSON;MDL:Stylus C85;DES:EPSON Stylus C85;CMD:ESCPL2,BDC,D4;" driver="escp2-c85" manufacturer="Epson" model="69" parameters="standard_params" foomaticid="Epson-Stylus_C85" /> - <printer translate="name" name="Epson Stylus C86" deviceid="MFG:EPSON;MDL:Stylus C86;DES:EPSON Stylus C86;CMD:ESCPL2,BDC,D4;" driver="escp2-c86" manufacturer="Epson" model="69" parameters="standard_params" foomaticid="Epson-Stylus_C86" /> - <printer translate="name" name="Epson Stylus C87" driver="escp2-c87" manufacturer="Epson" model="69" parameters="standard_params" foomaticid="Epson-Stylus_C87" /> - <printer translate="name" name="Epson Stylus C88" deviceid="MFG:EPSON;MDL:Stylus C88;DES:EPSON Stylus C88;CMD:ESCPL2,BDC,D4;" driver="escp2-c88" manufacturer="Epson" model="69" parameters="standard_params" foomaticid="Epson-Stylus_C88" /> - <printer translate="name" name="Epson Stylus C92" deviceid="MFG:EPSON;MDL:Stylus C92;DES:EPSON Stylus C92;CMD:ESCPL2,BDC,D4,D4PX;" driver="escp2-c92" manufacturer="Epson" model="66" parameters="standard_params" foomaticid="Epson-Stylus_C92" /> - <printer translate="name" name="Epson Stylus C110" driver="escp2-c110" manufacturer="Epson" model="85" parameters="standard_params" foomaticid="Epson-Stylus_C110" /> - <printer translate="name" name="Epson Stylus C120" driver="escp2-c120" manufacturer="Epson" model="85" parameters="standard_params" foomaticid="Epson-Stylus_C120" /> - <printer translate="name" name="Epson Stylus Color" driver="escp2" manufacturer="Epson" model="0" parameters="standard_params" foomaticid="Epson-Stylus_Color" /> - <printer translate="name" name="Epson Stylus Color I" driver="escp2-i" manufacturer="Epson" model="0" parameters="standard_params" foomaticid="Epson-Stylus_Color_I" /> - <printer translate="name" name="Epson Stylus Color II" driver="escp2-ii" manufacturer="Epson" model="0" parameters="standard_params" foomaticid="Epson-Stylus_Color_II" /> - <printer translate="name" name="Epson Stylus Color IIs" driver="escp2-iis" manufacturer="Epson" model="0" parameters="standard_params" foomaticid="Epson-Stylus_Color_IIs" /> - <printer translate="name" name="Epson Stylus Color PRO" driver="escp2-pro" manufacturer="Epson" model="45" parameters="standard_params" foomaticid="Epson-Stylus_Color_PRO" /> - <printer translate="name" name="Epson Stylus Pro XL" driver="escp2-pro-xl" manufacturer="Epson" model="39" parameters="standard_params" foomaticid="Epson-Stylus_Pro_XL" /> - <printer translate="name" name="Epson Stylus Color 400" driver="escp2-400" manufacturer="Epson" model="1" parameters="standard_params" foomaticid="Epson-Stylus_Color_400" /> - <printer translate="name" name="Epson Stylus Color 440" deviceid="MFG:EPSON;MDL:Stylus COLOR 440;DES:EPSON Stylus COLOR 440;CMD:ESCPL2,BDC;" driver="escp2-440" manufacturer="Epson" model="10" parameters="standard_params" foomaticid="Epson-Stylus_Color_440" /> - <printer translate="name" name="Epson Stylus Color 460" deviceid="MFG:EPSON;MDL:Stylus COLOR 460;DES:EPSON Stylus COLOR 460;CMD:ESCPL2,BDC;" driver="escp2-460" manufacturer="Epson" model="10" parameters="standard_params" foomaticid="Epson-Stylus_Color_460" /> - <printer translate="name" name="Epson Stylus Color 480" deviceid="MFG:EPSON;MDL:Stylus COLOR 480;DES:EPSON Stylus COLOR 480;CMD:ESCPL2,BDC,D4;" driver="escp2-480" manufacturer="Epson" model="21" parameters="480_params" foomaticid="Epson-Stylus_Color_480" /> - <printer translate="name" name="Epson Stylus Color 500" driver="escp2-500" manufacturer="Epson" model="1" parameters="standard_params" foomaticid="Epson-Stylus_Color_500" /> - <printer translate="name" name="Epson Stylus Color 580" driver="escp2-580" manufacturer="Epson" model="38" parameters="480_params" foomaticid="Epson-Stylus_Color_580" /> - <printer translate="name" name="Epson Stylus Color 600" deviceid="MFG:EPSON;MDL:Stylus COLOR 600;CMD:ESCPL2,BDC;" driver="escp2-600" manufacturer="Epson" model="3" parameters="standard_params" foomaticid="Epson-Stylus_Color_600" /> - <printer translate="name" name="Epson Stylus Color 640" driver="escp2-640" manufacturer="Epson" model="11" parameters="standard_params" foomaticid="Epson-Stylus_Color_640" /> - <printer translate="name" name="Epson Stylus Color 660" driver="escp2-660" manufacturer="Epson" model="18" parameters="standard_params" foomaticid="Epson-Stylus_Color_660" /> - <printer translate="name" name="Epson Stylus Color 670" deviceid="MFG:EPSON;MDL:Stylus COLOR 670;DES:EPSON Stylus COLOR 670;CMD:ESCPL2,BDC,D4;" driver="escp2-670" manufacturer="Epson" model="25" parameters="standard_params" foomaticid="Epson-Stylus_Color_670" /> - <printer translate="name" name="Epson Stylus Color 680" deviceid="MFG:EPSON;MDL:Stylus COLOR 680;DES:EPSON Stylus COLOR 680;CMD:ESCPL2,BDC,D4;" driver="escp2-680" manufacturer="Epson" model="32" parameters="standard_params" foomaticid="Epson-Stylus_Color_680" /> - <printer translate="name" name="Epson Stylus Color 740" deviceid="MFG:EPSON;MDL:Stylus COLOR 740;DES:EPSON Stylus COLOR 740;CMD:ESCPL2,BDC,D4;" driver="escp2-740" manufacturer="Epson" model="12" parameters="standard_params" foomaticid="Epson-Stylus_Color_740" /> - <printer translate="name" name="Epson Stylus Color 760" deviceid="MFG:EPSON;MDL:Stylus COLOR 760;DES:EPSON Stylus COLOR 760;CMD:ESCPL2,BDC,D4;" driver="escp2-760" manufacturer="Epson" model="19" parameters="standard_params" foomaticid="Epson-Stylus_Color_760" /> - <printer translate="name" name="Epson Stylus Color 777" deviceid="MFG:EPSON;MDL:Stylus COLOR 777;DES:EPSON Stylus COLOR 777;CMD:ESCPL2,BDC,D4;" driver="escp2-777" manufacturer="Epson" model="32" parameters="standard_params" foomaticid="Epson-Stylus_Color_777" /> - <printer translate="name" name="Epson Stylus Color 800" deviceid="MFG:EPSON;MDL:Stylus COLOR 800;CMD:ESCPL2,PRPXL24,BDC;" driver="escp2-800" manufacturer="Epson" model="4" parameters="standard_params" foomaticid="Epson-Stylus_Color_800" /> - <printer translate="name" name="Epson Stylus Color 850" driver="escp2-850" manufacturer="Epson" model="5" parameters="standard_params" foomaticid="Epson-Stylus_Color_850" /> - <printer translate="name" name="Epson Stylus Color 860" driver="escp2-860" manufacturer="Epson" model="16" parameters="standard_params" foomaticid="Epson-Stylus_Color_860" /> - <printer translate="name" name="Epson Stylus Color 880" deviceid="MFG:EPSON;MDL:Stylus COLOR 880;DES:EPSON Stylus COLOR 880;CMD:ESCPL2,BDC,D4;" driver="escp2-880" manufacturer="Epson" model="33" parameters="standard_params" foomaticid="Epson-Stylus_Color_880" /> - <printer translate="name" name="Epson Stylus Color 8 3" driver="escp2-83" manufacturer="Epson" model="33" parameters="standard_params" foomaticid="Epson-Stylus_Color_8_3" /> - <printer translate="name" name="Epson Stylus Color 900" deviceid="MFG:EPSON;MDL:Stylus COLOR 900;DES:EPSON Stylus COLOR 900;CMD:ESCPL2,PRPXL24,BDC,D4;" driver="escp2-900" manufacturer="Epson" model="13" parameters="standard_params" foomaticid="Epson-Stylus_Color_900" /> - <printer translate="name" name="Epson Stylus Color 980" deviceid="MFG:Epson;MDL:Stylus Color 980;CMD:ESC/P2;" driver="escp2-980" manufacturer="Epson" model="34" parameters="standard_params" foomaticid="Epson-Stylus_Color_980" /> - <printer translate="name" name="Epson Stylus Color 1160" driver="escp2-1160" manufacturer="Epson" model="17" parameters="standard_params" foomaticid="Epson-Stylus_Color_1160" /> - <printer translate="name" name="Epson Stylus Color 1500" driver="escp2-1500" manufacturer="Epson" model="2" parameters="standard_params" foomaticid="Epson-Stylus_Color_1500" /> - <printer translate="name" name="Epson Stylus Color 1520" deviceid="MFG:EPSON;MDL:Stylus COLOR 1520;CMD:ESCP2E,PRPXL;" driver="escp2-1520" manufacturer="Epson" model="6" parameters="standard_params" foomaticid="Epson-Stylus_Color_1520" /> - <printer translate="name" name="Epson Stylus Color 3000" driver="escp2-3000" manufacturer="Epson" model="24" parameters="standard_params" foomaticid="Epson-Stylus_Color_3000" /> - <printer translate="name" name="Epson Stylus Office B30" driver="escp2-of-b30" manufacturer="Epson" model="85" parameters="standard_params" foomaticid="Epson-Stylus_Office_B30" /> - <printer translate="name" name="Epson Stylus Office B33" driver="escp2-of-b33" manufacturer="Epson" model="85" parameters="standard_params" foomaticid="Epson-Stylus_Office_B33" /> - <printer translate="name" name="Epson Stylus Office B40W" driver="escp2-of-b40w" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_Office_B40W" /> - <printer translate="name" name="Epson Stylus Office B1100" driver="escp2-of-b1100" manufacturer="Epson" model="99" parameters="standard_params" foomaticid="Epson-Stylus_Office_B1100" /> - <printer translate="name" name="Epson Stylus Office T30" driver="escp2-of-t30" manufacturer="Epson" model="85" parameters="standard_params" foomaticid="Epson-Stylus_Office_T30" /> - <printer translate="name" name="Epson Stylus Office T33" driver="escp2-of-t33" manufacturer="Epson" model="85" parameters="standard_params" foomaticid="Epson-Stylus_Office_T33" /> - <printer translate="name" name="Epson Stylus Office T40W" driver="escp2-of-t40w" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_Office_T40W" /> - <printer translate="name" name="Epson Stylus Office T1100" driver="escp2-of-t1100" manufacturer="Epson" model="99" parameters="standard_params" foomaticid="Epson-Stylus_Office_T1100" /> - <printer translate="name" name="Epson Stylus Office T1110" driver="escp2-of-t1110" manufacturer="Epson" model="99" parameters="standard_params" foomaticid="Epson-Stylus_Office_T1110" /> - <printer translate="name" name="Epson Stylus Office BX300F" driver="escp2-of-bx300f" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_Office_BX300F" /> - <printer translate="name" name="Epson Stylus Office BX535WD" driver="escp2-of-bx535wd" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_Office_BX535WD" /> - <printer translate="name" name="Epson Stylus Office BX600FW" driver="escp2-of-bx600fw" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_Office_BX600FW" /> - <printer translate="name" name="Epson Stylus Office BX630FW" driver="escp2-of-bx630fw" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_Office_BX630FW" /> - <printer translate="name" name="Epson Stylus Office BX635FWD" driver="escp2-of-bx635fwd" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_Office_BX635FWD" /> - <printer translate="name" name="Epson Stylus Office SX600FW" driver="escp2-of-sx600fw" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_Office_SX600FW" /> - <printer translate="name" name="Epson Stylus Office TX300F" driver="escp2-of-tx300f" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_Office_TX300F" /> - <printer translate="name" name="Epson Stylus Office TX600FW" driver="escp2-of-tx600fw" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_Office_TX600FW" /> - <printer translate="name" name="Epson Stylus Office TX620FWD" driver="escp2-of-tx620fwd" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_Office_TX620FWD" /> - <printer translate="name" name="Epson Stylus Photo" driver="escp2-photo" manufacturer="Epson" model="9" parameters="standard_params" foomaticid="Epson-Stylus_Photo" /> - <printer translate="name" name="Epson Stylus Photo 700" deviceid="MFG:EPSON;MDL:Stylus Photo 700;DES:EPSON Stylus Photo 700;CMD:ESCPL2,BDC;" driver="escp2-700" manufacturer="Epson" model="7" parameters="standard_params" foomaticid="Epson-Stylus_Photo_700" /> - <printer translate="name" name="Epson Stylus Photo EX" deviceid="MFG:EPSON;MDL:Stylus Photo EX;CMD:ESCPL2,BDC;" driver="escp2-ex" manufacturer="Epson" model="8" parameters="standard_params" foomaticid="Epson-Stylus_Photo_EX" /> - <printer translate="name" name="Epson Stylus Photo EX3" driver="escp2-ex3" manufacturer="Epson" model="54" parameters="standard_params" foomaticid="Epson-Stylus_Photo_EX3" /> - <printer translate="name" name="Epson Stylus Photo 720" driver="escp2-720" manufacturer="Epson" model="20" parameters="standard_params" foomaticid="Epson-Stylus_Photo_720" /> - <printer translate="name" name="Epson Stylus Photo 750" deviceid="MFG:EPSON;MDL:Stylus Photo 750;DES:EPSON Stylus Photo 750;CMD:ESCPL2,BDC,D4;" driver="escp2-750" manufacturer="Epson" model="14" parameters="standard_params" foomaticid="Epson-Stylus_Photo_750" /> - <printer translate="name" name="Epson Stylus Photo 780" driver="escp2-780" manufacturer="Epson" model="35" parameters="standard_params" foomaticid="Epson-Stylus_Photo_780" /> + <printer translate="name" name="Epson Artisan 50" driver="escp2-artisan50" manufacturer="Epson" model="97" parameters="claria_params" /> + <printer translate="name" name="Epson Artisan 700" driver="escp2-artisan700" manufacturer="Epson" model="96" parameters="claria_params" /> + <printer translate="name" name="Epson Artisan 710" driver="escp2-artisan710" manufacturer="Epson" model="96" parameters="claria_params" /> + <printer translate="name" name="Epson Artisan 800" driver="escp2-artisan800" manufacturer="Epson" model="96" parameters="claria_params" /> + <printer translate="name" name="Epson Artisan 810" driver="escp2-artisan810" manufacturer="Epson" model="96" parameters="claria_params" /> + <printer translate="name" name="Epson Artisan 835" driver="escp2-artisan835" manufacturer="Epson" model="96" parameters="claria_params" /> + <printer translate="name" name="Epson B-300" driver="escp2-b300" manufacturer="Epson" model="87" parameters="standard_params" /> + <printer translate="name" name="Epson B-308" driver="escp2-b308" manufacturer="Epson" model="87" parameters="standard_params" /> + <printer translate="name" name="Epson B-310" driver="escp2-b310" manufacturer="Epson" model="87" parameters="standard_params" /> + <printer translate="name" name="Epson B-310N" driver="escp2-b310n" manufacturer="Epson" model="87" parameters="standard_params" /> + <printer translate="name" name="Epson B-500DN" driver="escp2-b500dn" manufacturer="Epson" model="87" parameters="standard_params" /> + <printer translate="name" name="Epson B-508DN" driver="escp2-b508dn" manufacturer="Epson" model="87" parameters="standard_params" /> + <printer translate="name" name="Epson B-510DN" driver="escp2-b510dn" manufacturer="Epson" model="87" parameters="standard_params" /> + <printer translate="name" name="Epson L120" driver="escp2-l120" manufacturer="Epson" model="80" parameters="cx3500_params" /> + <printer translate="name" name="Epson L210" driver="escp2-l210" manufacturer="Epson" model="80" parameters="cx3500_params" /> + <printer translate="name" name="Epson L1800" driver="escp2-l1800" manufacturer="Epson" model="122" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus C20" deviceid="MFG:EPSON;MDL:Stylus C20;DES:EPSON Stylus C20;CMD:ESCPL2,BDC,D4;" driver="escp2-c20" manufacturer="Epson" model="42" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C20SX" driver="escp2-c20sx" manufacturer="Epson" model="42" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C20UX" deviceid="MFG:EPSON;MDL:Stylus C20;DES:EPSON Stylus C20;CMD:ESCPL2,BDC,D4;" driver="escp2-c20ux" manufacturer="Epson" model="42" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C40" deviceid="MFG:EPSON;MDL:Stylus C40;DES:None;" driver="escp2-c40" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C40SX" driver="escp2-c40sx" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C40UX" driver="escp2-c40ux" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C41" driver="escp2-c41" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C41SX" driver="escp2-c41sx" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C41UX" driver="escp2-c41ux" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C42" deviceid="MFG:EPSON;MDL:Stylus C42;DES:EPSON Stylus C42;CMD:ESCPL2,BDC,D4;" driver="escp2-c42" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C42SX" driver="escp2-c42sx" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C42UX" deviceid="MFG:EPSON;MDL:Stylus C42;DES:EPSON Stylus C42;CMD:ESCPL2,BDC,D4;" driver="escp2-c42ux" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C43" deviceid="MFG:EPSON;MDL:Stylus C43;DES:EPSON Stylus C43;CMD:ESCPL2,BDC,D4;" driver="escp2-c43" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C43SX" deviceid="MFG:EPSON;MDL:Stylus C43;DES:EPSON Stylus C43;CMD:ESCPL2,BDC,D4;" driver="escp2-c43sx" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C43UX" deviceid="MFG:EPSON;MDL:Stylus C43;DES:EPSON Stylus C43;CMD:ESCPL2,BDC,D4;" driver="escp2-c43ux" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C44" deviceid="MFG:EPSON;MDL:Stylus C44;DES:EPSON Stylus C44;CMD:ESCPL2,BDC,D4;" driver="escp2-c44" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C44SX" deviceid="MFG:EPSON;MDL:Stylus C44;DES:EPSON Stylus C44;CMD:ESCPL2,BDC,D4;" driver="escp2-c44sx" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C44UX" deviceid="MFG:EPSON;MDL:Stylus C44;DES:EPSON Stylus C44;CMD:ESCPL2,BDC,D4;" driver="escp2-c44ux" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C45" deviceid="MFG:EPSON;MDL:Stylus C45;DES:EPSON Stylus C45;CMD:ESCPL2,BDC,D4;" driver="escp2-c45" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C46" deviceid="MFG:EPSON;MDL:Stylus C46;DES:EPSON Stylus C46;CMD:ESCPL2,BDC,D4;" driver="escp2-c46" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C48" deviceid="MFG:EPSON;MDL:Stylus C48;DES:EPSON Stylus C48;CMD:ESCPL2,BDC,D4;" driver="escp2-c48" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C50" driver="escp2-c50" manufacturer="Epson" model="56" parameters="480_params" /> + <printer translate="name" name="Epson Stylus C60" deviceid="MFG:EPSON;MDL:Stylus C60;DES:EPSON Stylus C60;CMD:ESCPL2,BDC,D4;" driver="escp2-c60" manufacturer="Epson" model="33" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C61" driver="escp2-c61" manufacturer="Epson" model="52" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C62" deviceid="MFG:EPSON;MDL:Stylus C62;DES:EPSON Stylus C62;CMD:ESCPL2,BDC,D4;" driver="escp2-c62" manufacturer="Epson" model="52" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C63" driver="escp2-c63" manufacturer="Epson" model="61" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C64" driver="escp2-c64" manufacturer="Epson" model="61" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C65" deviceid="MFG:EPSON;MDL:Stylus C65;DES:EPSON Stylus C65;CMD:ESCPL2,BDC,D4;" driver="escp2-c65" manufacturer="Epson" model="66" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C66" deviceid="MFG:EPSON;MDL:Stylus C66;DES:EPSON Stylus C66;CMD:ESCPL2,BDC,D4;" driver="escp2-c66" manufacturer="Epson" model="66" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C68" deviceid="MFG:EPSON;MDL:Stylus C68;DES:EPSON Stylus C68;CMD:ESCPL2,BDC,D4;" driver="escp2-c68" manufacturer="Epson" model="66" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C70" driver="escp2-c70" manufacturer="Epson" model="44" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C79" driver="escp2-c79" manufacturer="Epson" model="66" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C80" deviceid="MFG:EPSON;MDL:Stylus C80;DES:EPSON Stylus C80;CMD:ESCPL2,BDC,D4;" driver="escp2-c80" manufacturer="Epson" model="44" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C82" deviceid="MFG:EPSON;MDL:Stylus C82;DES:EPSON Stylus C82;CMD:ESCPL2,BDC,D4;" driver="escp2-c82" manufacturer="Epson" model="55" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C83" driver="escp2-c83" manufacturer="Epson" model="60" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C84" deviceid="MFG:EPSON;MDL:Stylus C84;DES:EPSON Stylus C84;CMD:ESCPL2,BDC,D4;" driver="escp2-c84" manufacturer="Epson" model="60" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C85" deviceid="MFG:EPSON;MDL:Stylus C85;DES:EPSON Stylus C85;CMD:ESCPL2,BDC,D4;" driver="escp2-c85" manufacturer="Epson" model="69" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C86" deviceid="MFG:EPSON;MDL:Stylus C86;DES:EPSON Stylus C86;CMD:ESCPL2,BDC,D4;" driver="escp2-c86" manufacturer="Epson" model="69" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C87" driver="escp2-c87" manufacturer="Epson" model="69" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C88" deviceid="MFG:EPSON;MDL:Stylus C88;DES:EPSON Stylus C88;CMD:ESCPL2,BDC,D4;" driver="escp2-c88" manufacturer="Epson" model="69" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C92" deviceid="MFG:EPSON;MDL:Stylus C92;DES:EPSON Stylus C92;CMD:ESCPL2,BDC,D4,D4PX;" driver="escp2-c92" manufacturer="Epson" model="66" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C110" driver="escp2-c110" manufacturer="Epson" model="85" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus C120" driver="escp2-c120" manufacturer="Epson" model="85" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color" driver="escp2" manufacturer="Epson" model="0" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color I" driver="escp2-i" manufacturer="Epson" model="0" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color II" driver="escp2-ii" manufacturer="Epson" model="0" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color IIs" driver="escp2-iis" manufacturer="Epson" model="0" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color PRO" driver="escp2-pro" manufacturer="Epson" model="45" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro XL" driver="escp2-pro-xl" manufacturer="Epson" model="39" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 400" driver="escp2-400" manufacturer="Epson" model="1" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 440" deviceid="MFG:EPSON;MDL:Stylus COLOR 440;DES:EPSON Stylus COLOR 440;CMD:ESCPL2,BDC;" driver="escp2-440" manufacturer="Epson" model="10" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 460" deviceid="MFG:EPSON;MDL:Stylus COLOR 460;DES:EPSON Stylus COLOR 460;CMD:ESCPL2,BDC;" driver="escp2-460" manufacturer="Epson" model="10" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 480" deviceid="MFG:EPSON;MDL:Stylus COLOR 480;DES:EPSON Stylus COLOR 480;CMD:ESCPL2,BDC,D4;" driver="escp2-480" manufacturer="Epson" model="21" parameters="480_params" /> + <printer translate="name" name="Epson Stylus Color 500" driver="escp2-500" manufacturer="Epson" model="1" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 580" driver="escp2-580" manufacturer="Epson" model="38" parameters="480_params" /> + <printer translate="name" name="Epson Stylus Color 600" deviceid="MFG:EPSON;MDL:Stylus COLOR 600;CMD:ESCPL2,BDC;" driver="escp2-600" manufacturer="Epson" model="3" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 640" driver="escp2-640" manufacturer="Epson" model="11" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 660" driver="escp2-660" manufacturer="Epson" model="18" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 670" deviceid="MFG:EPSON;MDL:Stylus COLOR 670;DES:EPSON Stylus COLOR 670;CMD:ESCPL2,BDC,D4;" driver="escp2-670" manufacturer="Epson" model="25" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 680" deviceid="MFG:EPSON;MDL:Stylus COLOR 680;DES:EPSON Stylus COLOR 680;CMD:ESCPL2,BDC,D4;" driver="escp2-680" manufacturer="Epson" model="32" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 740" deviceid="MFG:EPSON;MDL:Stylus COLOR 740;DES:EPSON Stylus COLOR 740;CMD:ESCPL2,BDC,D4;" driver="escp2-740" manufacturer="Epson" model="12" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 760" deviceid="MFG:EPSON;MDL:Stylus COLOR 760;DES:EPSON Stylus COLOR 760;CMD:ESCPL2,BDC,D4;" driver="escp2-760" manufacturer="Epson" model="19" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 777" deviceid="MFG:EPSON;MDL:Stylus COLOR 777;DES:EPSON Stylus COLOR 777;CMD:ESCPL2,BDC,D4;" driver="escp2-777" manufacturer="Epson" model="32" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 800" deviceid="MFG:EPSON;MDL:Stylus COLOR 800;CMD:ESCPL2,PRPXL24,BDC;" driver="escp2-800" manufacturer="Epson" model="4" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 850" driver="escp2-850" manufacturer="Epson" model="5" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 860" driver="escp2-860" manufacturer="Epson" model="16" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 880" deviceid="MFG:EPSON;MDL:Stylus COLOR 880;DES:EPSON Stylus COLOR 880;CMD:ESCPL2,BDC,D4;" driver="escp2-880" manufacturer="Epson" model="33" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 8 3" driver="escp2-83" manufacturer="Epson" model="33" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 900" deviceid="MFG:EPSON;MDL:Stylus COLOR 900;DES:EPSON Stylus COLOR 900;CMD:ESCPL2,PRPXL24,BDC,D4;" driver="escp2-900" manufacturer="Epson" model="13" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 980" deviceid="MFG:Epson;MDL:Stylus Color 980;CMD:ESC/P2;" driver="escp2-980" manufacturer="Epson" model="34" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 1160" driver="escp2-1160" manufacturer="Epson" model="17" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 1500" driver="escp2-1500" manufacturer="Epson" model="2" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 1520" deviceid="MFG:EPSON;MDL:Stylus COLOR 1520;CMD:ESCP2E,PRPXL;" driver="escp2-1520" manufacturer="Epson" model="6" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Color 3000" driver="escp2-3000" manufacturer="Epson" model="24" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Office B30" driver="escp2-of-b30" manufacturer="Epson" model="85" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Office B33" driver="escp2-of-b33" manufacturer="Epson" model="85" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Office B40W" driver="escp2-of-b40w" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Office B1100" driver="escp2-of-b1100" manufacturer="Epson" model="99" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Office T30" driver="escp2-of-t30" manufacturer="Epson" model="85" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Office T33" driver="escp2-of-t33" manufacturer="Epson" model="85" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Office T40W" driver="escp2-of-t40w" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Office T1100" driver="escp2-of-t1100" manufacturer="Epson" model="99" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Office T1110" driver="escp2-of-t1110" manufacturer="Epson" model="99" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Office BX300F" driver="escp2-of-bx300f" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Office BX535WD" driver="escp2-of-bx535wd" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Office BX600FW" driver="escp2-of-bx600fw" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Office BX630FW" driver="escp2-of-bx630fw" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Office BX635FWD" driver="escp2-of-bx635fwd" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Office SX600FW" driver="escp2-of-sx600fw" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Office TX300F" driver="escp2-of-tx300f" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Office TX600FW" driver="escp2-of-tx600fw" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Office TX620FWD" driver="escp2-of-tx620fwd" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo" driver="escp2-photo" manufacturer="Epson" model="9" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 700" deviceid="MFG:EPSON;MDL:Stylus Photo 700;DES:EPSON Stylus Photo 700;CMD:ESCPL2,BDC;" driver="escp2-700" manufacturer="Epson" model="7" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo EX" deviceid="MFG:EPSON;MDL:Stylus Photo EX;CMD:ESCPL2,BDC;" driver="escp2-ex" manufacturer="Epson" model="8" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo EX3" driver="escp2-ex3" manufacturer="Epson" model="54" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 720" driver="escp2-720" manufacturer="Epson" model="20" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 750" deviceid="MFG:EPSON;MDL:Stylus Photo 750;DES:EPSON Stylus Photo 750;CMD:ESCPL2,BDC,D4;" driver="escp2-750" manufacturer="Epson" model="14" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 780" driver="escp2-780" manufacturer="Epson" model="35" parameters="standard_params" /> <!-- Note that the 785EPX has a roll feed holder. It's more like the 890 than the 780, despite the name. --> - <printer translate="name" name="Epson Stylus Photo 785" deviceid="MFG:EPSON;MDL:Stylus Photo 785EPX;DES:EPSON Stylus Photo 785EPX;CMD:ESCPL2,BDC,D4;" driver="escp2-785" manufacturer="Epson" model="36" parameters="standard_params" foomaticid="Epson-Stylus_Photo_785" /> - <printer translate="name" name="Epson Stylus Photo 790" deviceid="MFG:EPSON;MDL:Stylus Photo 790;DES:EPSON Stylus Photo 790;CMD:ESCPL2,BDC,D4;" driver="escp2-790" manufacturer="Epson" model="35" parameters="standard_params" foomaticid="Epson-Stylus_Photo_790" /> - <printer translate="name" name="Epson Stylus Photo 810" driver="escp2-810" manufacturer="Epson" model="78" parameters="standard_params" foomaticid="Epson-Stylus_Photo_810" /> - <printer translate="name" name="Epson Stylus Photo 820" deviceid="MFG:EPSON;MDL:Stylus Photo 820;DES:EPSON Stylus Photo 820;CMD:ESCPL2,BDC,D4;" driver="escp2-820" manufacturer="Epson" model="78" parameters="standard_params" foomaticid="Epson-Stylus_Photo_820" /> - <printer translate="name" name="Epson Stylus Photo 825" deviceid="MFG:EPSON;MDL:Stylus Photo 825;DES:EPSON Stylus Photo 825;CMD:ESCPL2,BDC,D4;" driver="escp2-825" manufacturer="Epson" model="50" parameters="standard_params" foomaticid="Epson-Stylus_Photo_825" /> - <printer translate="name" name="Epson Stylus Photo 830" deviceid="MFG:EPSON;MDL:Stylus Photo 830U;DES:EPSON Stylus Photo 830U;CMD:ESCPL2,BDC,D4;" driver="escp2-830" manufacturer="Epson" model="50" parameters="standard_params" foomaticid="Epson-Stylus_Photo_830" /> - <printer translate="name" name="Epson Stylus Photo 830U" deviceid="MFG:EPSON;MDL:Stylus Photo 830U;DES:EPSON Stylus Photo 830U;CMD:ESCPL2,BDC,D4;" driver="escp2-830u" manufacturer="Epson" model="50" parameters="standard_params" foomaticid="Epson-Stylus_Photo_830U" /> - <printer translate="name" name="Epson Stylus Photo 870" deviceid="MFG:EPSON;MDL:Stylus Photo 870;DES:EPSON Stylus Photo 870;CMD:ESCPL2,BDC,D4;" driver="escp2-870" manufacturer="Epson" model="22" parameters="standard_params" foomaticid="Epson-Stylus_Photo_870" /> - <printer translate="name" name="Epson Stylus Photo 875" driver="escp2-875" manufacturer="Epson" model="22" parameters="standard_params" foomaticid="Epson-Stylus_Photo_875" /> - <printer translate="name" name="Epson Stylus Photo 890" deviceid="MFG:EPSON;MDL:Stylus Photo 890;DES:EPSON Stylus Photo 890;CMD:ESCPL2,BDC,D4;" driver="escp2-890" manufacturer="Epson" model="36" parameters="standard_params" foomaticid="Epson-Stylus_Photo_890" /> - <printer translate="name" name="Epson Stylus Photo 895" deviceid="MFG:EPSON;MDL:Stylus Photo 895;DES:EPSON Stylus Photo 895;CMD:ESCPL2,BDC,D4;" driver="escp2-895" manufacturer="Epson" model="36" parameters="standard_params" foomaticid="Epson-Stylus_Photo_895" /> - <printer translate="name" name="Epson Stylus Photo 900" deviceid="MFG:EPSON;MDL:Stylus Photo 900;DES:EPSON Stylus Photo 900;CMD:ESCPL2,BDC,D4;" driver="escp2-ph900" manufacturer="Epson" model="62" parameters="standard_params" foomaticid="Epson-Stylus_Photo_900" /> - <printer translate="name" name="Epson Stylus Photo 915" deviceid="MFG:EPSON;MDL:Stylus Photo 915;DES:EPSON Stylus Photo 915;CMD:ESCPL2,BDC,D4;" driver="escp2-915" manufacturer="Epson" model="36" parameters="standard_params" foomaticid="Epson-Stylus_Photo_915" /> - <printer translate="name" name="Epson Stylus Photo 925" driver="escp2-925" manufacturer="Epson" model="51" parameters="standard_params" foomaticid="Epson-Stylus_Photo_925" /> - <printer translate="name" name="Epson Stylus Photo 935" deviceid="MFG:EPSON;MDL:Stylus Photo 935;DES:EPSON Stylus Photo 935;CMD:ESCPL2,BDC,D4;" driver="escp2-935" manufacturer="Epson" model="36" parameters="standard_params" foomaticid="Epson-Stylus_Photo_935" /> - <printer translate="name" name="Epson Stylus Photo 950" driver="escp2-950" manufacturer="Epson" model="46" parameters="standard_params" foomaticid="Epson-Stylus_Photo_950" /> - <printer translate="name" name="Epson Stylus Photo 960" driver="escp2-960" manufacturer="Epson" model="46" parameters="standard_params" foomaticid="Epson-Stylus_Photo_960" /> - <printer translate="name" name="Epson Stylus Photo 1200" driver="escp2-1200" manufacturer="Epson" model="15" parameters="standard_params" foomaticid="Epson-Stylus_Photo_1200" /> - <printer translate="name" name="Epson Stylus Photo 1270" deviceid="MFG:EPSON;MDL:Stylus Photo 1270;DES:EPSON Stylus Photo 1270;CMD:ESCPL2,BDC,D4;CLS:PRINTER;" driver="escp2-1270" manufacturer="Epson" model="23" parameters="standard_params" foomaticid="Epson-Stylus_Photo_1270" /> - <printer translate="name" name="Epson Stylus Photo 1280" driver="escp2-1280" manufacturer="Epson" model="37" parameters="standard_params" foomaticid="Epson-Stylus_Photo_1280" /> - <printer translate="name" name="Epson Stylus Photo 1290" driver="escp2-1290" manufacturer="Epson" model="37" parameters="standard_params" foomaticid="Epson-Stylus_Photo_1290" /> - <printer translate="name" name="Epson Stylus Photo 1290s" driver="escp2-1290s" manufacturer="Epson" model="37" parameters="standard_params" foomaticid="Epson-Stylus_Photo_1290s" /> - <printer translate="name" name="Epson Stylus Photo 1400" deviceid="MFG:EPSON;MDL:Stylus Photo 1400;DES:EPSON Stylus Photo 1400;CMD:ESCPL2,BDC,D4,D4PX,ESCPR1;" driver="escp2-1400" manufacturer="Epson" model="82" parameters="claria_params" foomaticid="Epson-Stylus_Photo_1400" /> - <printer translate="name" name="Epson Stylus Photo 1410" driver="escp2-1410" manufacturer="Epson" model="82" parameters="claria_params" foomaticid="Epson-Stylus_Photo_1410" /> - <printer translate="name" name="Epson Stylus Photo 2000P" driver="escp2-2000" manufacturer="Epson" model="26" parameters="standard_params" foomaticid="Epson-Stylus_Photo_2000P" /> - <printer translate="name" name="Epson Stylus Photo 2100" driver="escp2-2100" manufacturer="Epson" model="47" parameters="standard_params" foomaticid="Epson-Stylus_Photo_2100" /> - <printer translate="name" name="Epson Stylus Photo 2200" driver="escp2-2200" manufacturer="Epson" model="47" parameters="standard_params" foomaticid="Epson-Stylus_Photo_2200" /> - <printer translate="name" name="Epson Stylus Photo P50" driver="escp2-p50" manufacturer="Epson" model="97" parameters="claria_params" foomaticid="Epson-Stylus_Photo_P50" /> - <printer translate="name" name="Epson Stylus Photo R200" deviceid="MFG:EPSON;MDL:Stylus Photo R200;DES:EPSON Stylus Photo R200;CMD:ESCPL2,BDC,D4;" driver="escp2-r200" manufacturer="Epson" model="63" parameters="standard_params" foomaticid="Epson-Stylus_Photo_R200" /> - <printer translate="name" name="Epson Stylus Photo R210" deviceid="MFG:EPSON;MDL:Stylus Photo R210;DES:EPSON Stylus Photo R210;CMD:ESCPL2,BDC,D4;" driver="escp2-r210" manufacturer="Epson" model="63" parameters="standard_params" foomaticid="Epson-Stylus_Photo_R210" /> - <printer translate="name" name="Epson Stylus Photo R220" deviceid="MFG:EPSON;MDL:Stylus Photo R220;DES:EPSON Stylus Photo R220;CMD:ESCPL2,BDC,D4;" driver="escp2-r220" manufacturer="Epson" model="84" parameters="standard_params" foomaticid="Epson-Stylus_Photo_R220" /> - <printer translate="name" name="Epson Stylus Photo R230" deviceid="MFG:EPSON;MDL:Stylus Photo R230;" driver="escp2-r230" manufacturer="Epson" model="84" parameters="standard_params" foomaticid="Epson-Stylus_Photo_R230" /> - <printer translate="name" name="Epson Stylus Photo R240" driver="escp2-r240" manufacturer="Epson" model="83" parameters="standard_params" foomaticid="Epson-Stylus_Photo_R240" /> - <printer translate="name" name="Epson Stylus Photo R245" driver="escp2-r245" manufacturer="Epson" model="83" parameters="standard_params" foomaticid="Epson-Stylus_Photo_R245" /> - <printer translate="name" name="Epson Stylus Photo R260" driver="escp2-r260" manufacturer="Epson" model="81" parameters="claria_params" foomaticid="Epson-Stylus_Photo_R260" /> - <printer translate="name" name="Epson Stylus Photo R265" driver="escp2-r265" manufacturer="Epson" model="81" parameters="claria_params" foomaticid="Epson-Stylus_Photo_R265" /> - <printer translate="name" name="Epson Stylus Photo R270" driver="escp2-r270" manufacturer="Epson" model="81" parameters="claria_params" foomaticid="Epson-Stylus_Photo_R270" /> - <printer translate="name" name="Epson Stylus Photo R280" driver="escp2-r280" manufacturer="Epson" model="81" parameters="claria_params" foomaticid="Epson-Stylus_Photo_R280" /> - <printer translate="name" name="Epson Stylus Photo R285" driver="escp2-r285" manufacturer="Epson" model="81" parameters="claria_params" foomaticid="Epson-Stylus_Photo_R285" /> - <printer translate="name" name="Epson Stylus Photo R290" driver="escp2-r290" manufacturer="Epson" model="81" parameters="claria_params" foomaticid="Epson-Stylus_Photo_R290" /> - <printer translate="name" name="Epson Stylus Photo R300" deviceid="MFG:EPSON;MDL:Stylus Photo R300;DES:EPSON Stylus Photo R300;" driver="escp2-r300" manufacturer="Epson" model="63" parameters="standard_params" foomaticid="Epson-Stylus_Photo_R300" /> - <printer translate="name" name="Epson Stylus Photo R310" deviceid="MFG:EPSON;MDL:Stylus Photo R310;DES:EPSON Stylus Photo R310;" driver="escp2-r310" manufacturer="Epson" model="63" parameters="standard_params" foomaticid="Epson-Stylus_Photo_R310" /> - <printer translate="name" name="Epson Stylus Photo R320" deviceid="MFG:EPSON;MDL:Stylus Photo R320;DES:EPSON Stylus Photo R320;" driver="escp2-r320" manufacturer="Epson" model="63" parameters="standard_params" foomaticid="Epson-Stylus_Photo_R320" /> - <printer translate="name" name="Epson Stylus Photo R340" deviceid="MFG:EPSON;MDL:Stylus Photo R340;DES:EPSON Stylus Photo R340;" driver="escp2-r340" manufacturer="Epson" model="84" parameters="standard_params" foomaticid="Epson-Stylus_Photo_R340" /> - <printer translate="name" name="Epson Stylus Photo R350" driver="escp2-r350" manufacturer="Epson" model="84" parameters="standard_params" foomaticid="Epson-Stylus_Photo_R350" /> - <printer translate="name" name="Epson Stylus Photo R360" driver="escp2-r360" manufacturer="Epson" model="81" parameters="claria_params" foomaticid="Epson-Stylus_Photo_R360" /> - <printer translate="name" name="Epson Stylus Photo R380" driver="escp2-r380" manufacturer="Epson" model="81" parameters="claria_params" foomaticid="Epson-Stylus_Photo_R380" /> - <printer translate="name" name="Epson Stylus Photo R390" driver="escp2-r390" manufacturer="Epson" model="81" parameters="claria_params" foomaticid="Epson-Stylus_Photo_R390" /> - <printer translate="name" name="Epson Stylus Photo R800" driver="escp2-r800" manufacturer="Epson" model="64" parameters="standard_params" foomaticid="Epson-Stylus_Photo_R800" /> - <printer translate="name" name="Epson Stylus Photo R1800" driver="escp2-r1800" manufacturer="Epson" model="67" parameters="standard_params" foomaticid="Epson-Stylus_Photo_R1800" /> - <printer translate="name" name="Epson Stylus Photo R1900" driver="escp2-r1900" manufacturer="Epson" model="91" parameters="standard_params" foomaticid="Epson-Stylus_Photo_R1900" /> - <printer translate="name" name="Epson Stylus Photo R2000" driver="escp2-r2000" manufacturer="Epson" model="91" parameters="standard_params" foomaticid="Epson-Stylus_Photo_R2000" /> - <printer translate="name" name="Epson Stylus Photo R2400" deviceid="MFG:EPSON;MDL:Stylus Photo R2400;DES:EPSON Stylus Photo R2400;CMD:ESCPL2,BDC,D4;" driver="escp2-r2400" manufacturer="Epson" model="71" parameters="standard_params" foomaticid="Epson-Stylus_Photo_R2400" /> - <printer translate="name" name="Epson Stylus Photo R2880" driver="escp2-r2880" manufacturer="Epson" model="98" parameters="standard_params" foomaticid="Epson-Stylus_Photo_R2880" /> - <printer translate="name" name="Epson Stylus Photo R3000" driver="escp2-r3000" manufacturer="Epson" model="115" parameters="standard_params" foomaticid="Epson-Stylus_Photo_R3000" /> - <printer translate="name" name="Epson Stylus Photo RX400" deviceid="MFG:EPSON;MDL:Stylus Photo RX400;DES:EPSON Stylus Photo RX400;CMD:ESCPL2,BDC,D4;" driver="escp2-rx400" manufacturer="Epson" model="84" parameters="standard_params" foomaticid="Epson-Stylus_Photo_RX400" /> - <printer translate="name" name="Epson Stylus Photo RX420" deviceid="MFG:EPSON;MDL:Stylus Photo RX420;DES:EPSON Stylus Photo RX420;CMD:ESCPL2,BDC,D4;" driver="escp2-rx420" manufacturer="Epson" model="84" parameters="standard_params" foomaticid="Epson-Stylus_Photo_RX420" /> - <printer translate="name" name="Epson Stylus Photo RX425" deviceid="MFG:EPSON;MDL:Stylus Photo RX425;DES:EPSON Stylus Photo RX425;CMD:ESCPL2,BDC,D4;" driver="escp2-rx425" manufacturer="Epson" model="84" parameters="standard_params" foomaticid="Epson-Stylus_Photo_RX425" /> - <printer translate="name" name="Epson Stylus Photo RX430" deviceid="MFG:EPSON;MDL:Stylus Photo RX430;DES:EPSON Stylus Photo RX430;CMD:ESCPL2,BDC,D4;" driver="escp2-rx430" manufacturer="Epson" model="84" parameters="standard_params" foomaticid="Epson-Stylus_Photo_RX430" /> - <printer translate="name" name="Epson Stylus Photo RX500" deviceid="MFG:EPSON;MDL:Stylus Photo RX500;DES:EPSON Stylus Photo RX500;CMD:ESCPL2,BDC,D4;" driver="escp2-rx500" manufacturer="Epson" model="84" parameters="standard_params" foomaticid="Epson-Stylus_Photo_RX500" /> - <printer translate="name" name="Epson Stylus Photo RX510" deviceid="MFG:EPSON;MDL:Stylus Photo RX510;DES:EPSON Stylus Photo RX510;CMD:ESCPL2,BDC,D4;" driver="escp2-rx510" manufacturer="Epson" model="84" parameters="standard_params" foomaticid="Epson-Stylus_Photo_RX510" /> - <printer translate="name" name="Epson Stylus Photo RX560" driver="escp2-rx560" manufacturer="Epson" model="81" parameters="claria_params" foomaticid="Epson-Stylus_Photo_RX560" /> - <printer translate="name" name="Epson Stylus Photo RX580" driver="escp2-rx580" manufacturer="Epson" model="81" parameters="claria_params" foomaticid="Epson-Stylus_Photo_RX580" /> - <printer translate="name" name="Epson Stylus Photo RX585" driver="escp2-rx585" manufacturer="Epson" model="81" parameters="claria_params" foomaticid="Epson-Stylus_Photo_RX585" /> - <printer translate="name" name="Epson Stylus Photo RX590" driver="escp2-rx590" manufacturer="Epson" model="81" parameters="claria_params" foomaticid="Epson-Stylus_Photo_RX590" /> - <printer translate="name" name="Epson Stylus Photo RX595" driver="escp2-rx595" manufacturer="Epson" model="81" parameters="claria_params" foomaticid="Epson-Stylus_Photo_RX595" /> - <printer translate="name" name="Epson Stylus Photo RX600" driver="escp2-rx600" manufacturer="Epson" model="84" parameters="standard_params" foomaticid="Epson-Stylus_Photo_RX600" /> - <printer translate="name" name="Epson Stylus Photo RX610" driver="escp2-rx610" manufacturer="Epson" model="81" parameters="standard_params" foomaticid="Epson-Stylus_Photo_RX610" /> - <printer translate="name" name="Epson Stylus Photo RX620" deviceid="MFG:EPSON;MDL:Stylus Photo RX620;DES:EPSON Stylus Photo RX620;CMD:ESCPL2,BDC,D4;" driver="escp2-rx620" manufacturer="Epson" model="84" parameters="standard_params" foomaticid="Epson-Stylus_Photo_RX620" /> - <printer translate="name" name="Epson Stylus Photo RX630" deviceid="MFG:EPSON;MDL:Stylus Photo RX630;DES:EPSON Stylus Photo RX630;CMD:ESCPL2,BDC,D4;" driver="escp2-rx630" manufacturer="Epson" model="84" parameters="standard_params" foomaticid="Epson-Stylus_Photo_RX630" /> - <printer translate="name" name="Epson Stylus Photo RX640" driver="escp2-rx640" manufacturer="Epson" model="81" parameters="claria_params" foomaticid="Epson-Stylus_Photo_RX640" /> - <printer translate="name" name="Epson Stylus Photo RX650" driver="escp2-rx650" manufacturer="Epson" model="81" parameters="claria_params" foomaticid="Epson-Stylus_Photo_RX650" /> - <printer translate="name" name="Epson Stylus Photo RX680" driver="escp2-rx680" manufacturer="Epson" model="97" parameters="claria_params" foomaticid="Epson-Stylus_Photo_RX680" /> - <printer translate="name" name="Epson Stylus Photo RX685" driver="escp2-rx685" manufacturer="Epson" model="97" parameters="claria_params" foomaticid="Epson-Stylus_Photo_RX685" /> - <printer translate="name" name="Epson Stylus Photo RX690" driver="escp2-rx690" manufacturer="Epson" model="97" parameters="claria_params" foomaticid="Epson-Stylus_Photo_RX690" /> - <printer translate="name" name="Epson Stylus Photo RX700" deviceid="MFG:EPSON;MDL:Stylus Photo RX700;DES:EPSON Stylus Photo RX700;CMD:ESCPL2,BDC,D4;" driver="escp2-rx700" manufacturer="Epson" model="70" parameters="standard_params" foomaticid="Epson-Stylus_Photo_RX700" /> - <printer translate="name" name="Epson Stylus Photo TX700W" driver="escp2-tx700w" manufacturer="Epson" model="96" parameters="claria_params" foomaticid="Epson-Stylus_Photo_TX700W" /> - <printer translate="name" name="Epson Stylus Photo TX710W" driver="escp2-tx710w" manufacturer="Epson" model="96" parameters="claria_params" foomaticid="Epson-Stylus_Photo_TX710W" /> - <printer translate="name" name="Epson Stylus Photo TX800FW" driver="escp2-tx800w" manufacturer="Epson" model="96" parameters="claria_params" foomaticid="Epson-Stylus_Photo_TX800FW" /> - <printer translate="name" name="Epson Stylus Photo TX810FW" driver="escp2-tx810fw" manufacturer="Epson" model="96" parameters="claria_params" foomaticid="Epson-Stylus_Photo_TX810FW" /> - <printer translate="name" name="Epson Stylus Pro 3800" driver="escp2-3800" manufacturer="Epson" model="108" parameters="standard_params" foomaticid="Epson-Stylus_Pro_3800" /> - <printer translate="name" name="Epson Stylus Pro 3880" driver="escp2-3880" manufacturer="Epson" model="107" parameters="standard_params" foomaticid="Epson-Stylus_Pro_3880" /> - <printer translate="name" name="Epson Stylus Pro 3885" driver="escp2-3885" manufacturer="Epson" model="107" parameters="standard_params" foomaticid="Epson-Stylus_Pro_3885" /> - <printer translate="name" name="Epson Stylus Pro 4000" driver="escp2-4000" manufacturer="Epson" model="114" parameters="standard_params" foomaticid="Epson-Stylus_Pro_4000" /> - <printer translate="name" name="Epson Stylus Pro 4800/4880 Back Compatible" driver="escp2-4600" manufacturer="Epson" model="112" parameters="standard_params" foomaticid="Epson-Stylus_Pro_4600" /> - <printer translate="name" name="Epson Stylus Pro 4800" driver="escp2-4800" manufacturer="Epson" model="106" parameters="standard_params" foomaticid="Epson-Stylus_Pro_4800" /> - <printer translate="name" name="Epson Stylus Pro 4880" driver="escp2-4880" manufacturer="Epson" model="102" parameters="standard_params" foomaticid="Epson-Stylus_Pro_4880" /> - <printer translate="name" name="Epson Stylus Pro 5000" driver="escp2-5000" manufacturer="Epson" model="27" parameters="standard_params" foomaticid="Epson-Stylus_Pro_5000" /> - <printer translate="name" name="Epson Stylus Pro 5500" driver="escp2-5500" manufacturer="Epson" model="40" parameters="pro_5500_params" foomaticid="Epson-Stylus_Pro_5500" /> - <printer translate="name" name="Epson Stylus Pro 7000" driver="escp2-7000" manufacturer="Epson" model="28" parameters="standard_params" foomaticid="Epson-Stylus_Pro_7000" /> - <printer translate="name" name="Epson Stylus Pro 7500" driver="escp2-7500" manufacturer="Epson" model="29" parameters="pro_5500_params" foomaticid="Epson-Stylus_Pro_7500" /> - <printer translate="name" name="Epson Stylus Pro 7600" driver="escp2-7600" manufacturer="Epson" model="48" parameters="standard_params" foomaticid="Epson-Stylus_Pro_7600" /> - <printer translate="name" name="Epson Stylus Pro 7700" driver="escp2-7700" manufacturer="Epson" model="109" parameters="standard_params" foomaticid="Epson-Stylus_Pro_7700" /> - <printer translate="name" name="Epson Stylus Pro 7800" driver="escp2-7800" manufacturer="Epson" model="103" parameters="standard_params" foomaticid="Epson-Stylus_Pro_7800" /> - <printer translate="name" name="Epson Stylus Pro 7880" driver="escp2-7880" manufacturer="Epson" model="89" parameters="standard_params" foomaticid="Epson-Stylus_Pro_7880" /> - <printer translate="name" name="Epson Stylus Pro 7890" driver="escp2-7890" manufacturer="Epson" model="89" parameters="standard_params" foomaticid="Epson-Stylus_Pro_7890" /> - <printer translate="name" name="Epson Stylus Pro 7900" driver="escp2-7900" manufacturer="Epson" model="116" parameters="standard_params" foomaticid="Epson-Stylus_Pro_7900" /> - <printer translate="name" name="Epson Stylus Pro 9000" driver="escp2-9000" manufacturer="Epson" model="30" parameters="standard_params" foomaticid="Epson-Stylus_Pro_9000" /> - <printer translate="name" name="Epson Stylus Pro 9500" driver="escp2-9500" manufacturer="Epson" model="31" parameters="pro_5500_params" foomaticid="Epson-Stylus_Pro_9500" /> - <printer translate="name" name="Epson Stylus Pro 9600" driver="escp2-9600" manufacturer="Epson" model="49" parameters="standard_params" foomaticid="Epson-Stylus_Pro_9600" /> - <printer translate="name" name="Epson Stylus Pro 9700" driver="escp2-9700" manufacturer="Epson" model="110" parameters="standard_params" foomaticid="Epson-Stylus_Pro_9700" /> - <printer translate="name" name="Epson Stylus Pro 9800" driver="escp2-9800" manufacturer="Epson" model="104" parameters="standard_params" foomaticid="Epson-Stylus_Pro_9800" /> - <printer translate="name" name="Epson Stylus Pro 9880" driver="escp2-9880" manufacturer="Epson" model="90" parameters="standard_params" foomaticid="Epson-Stylus_Pro_9880" /> - <printer translate="name" name="Epson Stylus Pro 9890" driver="escp2-9890" manufacturer="Epson" model="90" parameters="standard_params" foomaticid="Epson-Stylus_Pro_9890" /> - <printer translate="name" name="Epson Stylus Pro 9900" driver="escp2-9900" manufacturer="Epson" model="117" parameters="standard_params" foomaticid="Epson-Stylus_Pro_9900" /> - <printer translate="name" name="Epson Stylus Pro 10000" driver="escp2-10000" manufacturer="Epson" model="41" parameters="standard_params" foomaticid="Epson-Stylus_Pro_10000" /> - <printer translate="name" name="Epson Stylus Pro 11800/11880 Back Compatible" driver="escp2-11600" manufacturer="Epson" model="113" parameters="standard_params" foomaticid="Epson-Stylus_Pro_11600" /> - <printer translate="name" name="Epson Stylus Pro 11800" driver="escp2-11800" manufacturer="Epson" model="105" parameters="standard_params" foomaticid="Epson-Stylus_Pro_11800" /> - <printer translate="name" name="Epson Stylus Pro 11880" driver="escp2-11880" manufacturer="Epson" model="88" parameters="standard_params" foomaticid="Epson-Stylus_Pro_11880" /> - <printer translate="name" name="Epson Stylus Scan 2000" driver="escp2-scan2000" manufacturer="Epson" model="12" parameters="standard_params" foomaticid="Epson-Stylus_Scan_2000" /> - <printer translate="name" name="Epson Stylus Scan 2500" driver="escp2-scan2500" manufacturer="Epson" model="12" parameters="standard_params" foomaticid="Epson-Stylus_Scan_2500" /> - <printer translate="name" name="Epson Stylus CX1500" deviceid="MFG:EPSON;MDL:Stylus CX1500;DES:EPSON Stylus CX1500;CMD:ESCPL2,BDC,D4;" driver="escp2-cx1500" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-Stylus_CX1500" /> - <printer translate="name" name="Epson Stylus CX3100" deviceid="MFG:EPSON;MDL:Stylus CX3100;DES:EPSON Stylus CX3100;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3100" manufacturer="Epson" model="52" parameters="standard_params" foomaticid="Epson-Stylus_CX3100" /> - <printer translate="name" name="Epson Stylus CX3200" deviceid="MFG:EPSON;MDL:Stylus CX3200;DES:EPSON Stylus CX3200;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3200" manufacturer="Epson" model="52" parameters="standard_params" foomaticid="Epson-Stylus_CX3200" /> - <printer translate="name" name="Epson Stylus CX3500" deviceid="MFG:EPSON;MDL:Stylus CX3500;DES:EPSON Stylus CX3500;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3500" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_CX3500" /> - <printer translate="name" name="Epson Stylus CX3600" deviceid="MFG:EPSON;MDL:Stylus CX3600;DES:EPSON Stylus CX3600;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3600" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_CX3600" /> - <printer translate="name" name="Epson Stylus CX3650" deviceid="MFG:EPSON;MDL:Stylus CX3650;DES:EPSON Stylus CX3650;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3650" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_CX3650" /> - <printer translate="name" name="Epson Stylus CX3700" deviceid="MFG:EPSON;MDL:Stylus CX3700;DES:EPSON Stylus CX3700;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3700" manufacturer="Epson" model="72" parameters="standard_params" foomaticid="Epson-Stylus_CX3700" /> - <printer translate="name" name="Epson Stylus CX3800" deviceid="MFG:EPSON;MDL:Stylus CX3800;DES:EPSON Stylus CX3800;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3800" manufacturer="Epson" model="72" parameters="standard_params" foomaticid="Epson-Stylus_CX3800" /> - <printer translate="name" name="Epson Stylus CX3805" deviceid="MFG:EPSON;MDL:Stylus CX3805;DES:EPSON Stylus CX3805;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3805" manufacturer="Epson" model="72" parameters="standard_params" foomaticid="Epson-Stylus_CX3805" /> - <printer translate="name" name="Epson Stylus CX3810" deviceid="MFG:EPSON;MDL:Stylus CX3810;DES:EPSON Stylus CX3810;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3810" manufacturer="Epson" model="72" parameters="standard_params" foomaticid="Epson-Stylus_CX3810" /> - <printer translate="name" name="Epson Stylus CX3900" deviceid="MFG:EPSON;MDL:Stylus CX3900;DES:EPSON Stylus CX3900;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3900" manufacturer="Epson" model="72" parameters="standard_params" foomaticid="Epson-Stylus_CX3900" /> - <printer translate="name" name="Epson Stylus CX4100" deviceid="MFG:EPSON;MDL:Stylus CX4100;DES:EPSON Stylus CX4100;CMD:ESCPL2,BDC,D4;" driver="escp2-cx4100" manufacturer="Epson" model="95" parameters="cx3500_params" foomaticid="Epson-Stylus_CX4100" /> - <printer translate="name" name="Epson Stylus CX4200" deviceid="MFG:EPSON;MDL:Stylus CX4200;DES:EPSON Stylus CX4200;CMD:ESCPL2,BDC,D4;" driver="escp2-cx4200" manufacturer="Epson" model="95" parameters="cx3500_params" foomaticid="Epson-Stylus_CX4200" /> - <printer translate="name" name="Epson Stylus CX4400" driver="escp2-cx4400" manufacturer="Epson" model="72" parameters="standard_params" foomaticid="Epson-Stylus_CX4400" /> - <printer translate="name" name="Epson Stylus CX4500" deviceid="MFG:EPSON;MDL:Stylus CX4500;DES:EPSON Stylus CX4500;CMD:ESCPL2,BDC,D4;" driver="escp2-cx4500" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_CX4500" /> - <printer translate="name" name="Epson Stylus CX4600" deviceid="MFG:EPSON;MDL:Stylus CX4600;DES:EPSON Stylus CX4600;CMD:ESCPL2,BDC,D4;" driver="escp2-cx4600" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_CX4600" /> - <printer translate="name" name="Epson Stylus CX4700" deviceid="MFG:EPSON;MDL:Stylus CX4700;DES:EPSON Stylus CX4700;CMD:ESCPL2,BDC,D4;" driver="escp2-cx4700" manufacturer="Epson" model="95" parameters="cx3500_params" foomaticid="Epson-Stylus_CX4700" /> - <printer translate="name" name="Epson Stylus CX4800" deviceid="MFG:EPSON;MDL:Stylus CX4800;DES:EPSON Stylus CX4800;CMD:ESCPL2,BDC,D4;" driver="escp2-cx4800" manufacturer="Epson" model="95" parameters="cx3500_params" foomaticid="Epson-Stylus_CX4800" /> - <printer translate="name" name="Epson Stylus CX4900" driver="escp2-cx4900" manufacturer="Epson" model="95" parameters="cx3500_params" foomaticid="Epson-Stylus_CX4900" /> - <printer translate="name" name="Epson Stylus CX5000" driver="escp2-cx5000" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_CX5000" /> - <printer translate="name" name="Epson Stylus CX5000F" driver="escp2-cx5000f" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_CX5000F" /> - <printer translate="name" name="Epson Stylus CX5100" deviceid="MFG:EPSON;MDL:Stylus CX5100;DES:EPSON Stylus CX5100;CMD:ESCPL2,BDC,D4;" driver="escp2-cx5100" manufacturer="Epson" model="55" parameters="cx3500_params" foomaticid="Epson-Stylus_CX5100" /> - <printer translate="name" name="Epson Stylus CX5200" driver="escp2-cx5200" manufacturer="Epson" model="55" parameters="cx3500_params" foomaticid="Epson-Stylus_CX5200" /> - <printer translate="name" name="Epson Stylus CX5300" deviceid="MFG:EPSON;MDL:Stylus CX5300;DES:EPSON Stylus CX5300;CMD:ESCPL2,BDC,D4;" driver="escp2-cx5300" manufacturer="Epson" model="55" parameters="cx3500_params" foomaticid="Epson-Stylus_CX5300" /> - <printer translate="name" name="Epson Stylus CX5400" deviceid="MFG:EPSON;MDL:Stylus CX5400;DES:EPSON Stylus CX5400;CMD:ESCPL2,BDC,D4;" driver="escp2-cx5400" manufacturer="Epson" model="55" parameters="cx3500_params" foomaticid="Epson-Stylus_CX5400" /> - <printer translate="name" name="Epson Stylus CX5500" driver="escp2-cx5500" manufacturer="Epson" model="72" parameters="standard_params" foomaticid="Epson-Stylus_CX5500" /> - <printer translate="name" name="Epson Stylus CX5600" driver="escp2-cx5600" manufacturer="Epson" model="72" parameters="standard_params" foomaticid="Epson-Stylus_CX5600" /> - <printer translate="name" name="Epson Stylus CX5700" deviceid="MFG:EPSON;MDL:Stylus CX5700;DES:EPSON Stylus CX5700;CMD:ESCPL2,BDC,D4;" driver="escp2-cx5700" manufacturer="Epson" model="95" parameters="cx3500_params" foomaticid="Epson-Stylus_CX5700" /> - <printer translate="name" name="Epson Stylus CX5800" deviceid="MFG:EPSON;MDL:Stylus CX5800;DES:EPSON Stylus CX5800;CMD:ESCPL2,BDC,D4;" driver="escp2-cx5800" manufacturer="Epson" model="95" parameters="cx3500_params" foomaticid="Epson-Stylus_CX5800" /> - <printer translate="name" name="Epson Stylus CX6000" driver="escp2-cx6000" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_CX6000" /> - <printer translate="name" name="Epson Stylus CX6300" deviceid="MFG:EPSON;MDL:Stylus CX6300;DES:EPSON Stylus CX6300;CMD:ESCPL2,BDC,D4;" driver="escp2-cx6300" manufacturer="Epson" model="79" parameters="cx3500_params" foomaticid="Epson-Stylus_CX6300" /> - <printer translate="name" name="Epson Stylus CX6400" driver="escp2-cx6400" manufacturer="Epson" model="79" parameters="cx3500_params" foomaticid="Epson-Stylus_CX6400" /> - <printer translate="name" name="Epson Stylus CX6500" deviceid="MFG:EPSON;MDL:Stylus CX6500;DES:EPSON Stylus CX6500;CMD:ESCPL2,BDC,D4;" driver="escp2-cx6500" manufacturer="Epson" model="80" parameters="cx3500_params" foomaticid="Epson-Stylus_CX6500" /> - <printer translate="name" name="Epson Stylus CX6600" deviceid="MFG:EPSON;MDL:Stylus CX6600;DES:EPSON Stylus CX6600;CMD:ESCPL2,BDC,D4;" driver="escp2-cx6600" manufacturer="Epson" model="80" parameters="cx3500_params" foomaticid="Epson-Stylus_CX6600" /> - <printer translate="name" name="Epson Stylus CX7000F" driver="escp2-cx7000f" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_CX7000F" /> - <printer translate="name" name="Epson Stylus CX7300" driver="escp2-cx7300" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_CX7300" /> - <printer translate="name" name="Epson Stylus CX7400" driver="escp2-cx7400" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_CX7400" /> - <printer translate="name" name="Epson Stylus CX7700" deviceid="MFG:EPSON;MDL:Stylus CX7700;DES:EPSON Stylus CX7700;CMD:ESCPL2,BDC,D4;" driver="escp2-cx7700" manufacturer="Epson" model="95" parameters="cx3500_params" foomaticid="Epson-Stylus_CX7700" /> - <printer translate="name" name="Epson Stylus CX7800" deviceid="MFG:EPSON;MDL:Stylus CX7800;DES:EPSON Stylus CX7800;CMD:ESCPL2,BDC,D4;" driver="escp2-cx7800" manufacturer="Epson" model="95" parameters="cx3500_params" foomaticid="Epson-Stylus_CX7800" /> - <printer translate="name" name="Epson Stylus CX8300" deviceid="MFG:EPSON;MDL:Stylus CX8300;DES:EPSON Stylus CX8300;CMD:ESCPL2,BDC,D4;" driver="escp2-cx8300" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_CX8300" /> - <printer translate="name" name="Epson Stylus CX8400" deviceid="MFG:EPSON;MDL:Stylus CX8400;DES:EPSON Stylus CX8400;CMD:ESCPL2,BDC,D4;" driver="escp2-cx8400" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_CX8400" /> - <printer translate="name" name="Epson Stylus CX9300F" driver="escp2-cx9300f" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_CX9300F" /> - <printer translate="name" name="Epson Stylus CX9400" driver="escp2-cx9400" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_CX9400" /> - <printer translate="name" name="Epson Stylus CX9400F" driver="escp2-cx9400f" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_CX9400F" /> - <printer translate="name" name="Epson Stylus CX9475F" driver="escp2-cx9475f" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_CX9475F" /> - <printer translate="name" name="Epson Stylus D68" deviceid="MFG:EPSON;MDL:Stylus D68;DES:EPSON Stylus D68;CMD:ESCPL2,BDC,D4;" driver="escp2-d68" manufacturer="Epson" model="66" parameters="standard_params" foomaticid="Epson-Stylus_D68" /> - <printer translate="name" name="Epson Stylus D78" deviceid="MFG:EPSON;MDL:Stylus D78;DES:EPSON Stylus D78;CMD:ESCPL2,BDC,D4,D4PX;" driver="escp2-d78" manufacturer="Epson" model="66" parameters="standard_params" foomaticid="Epson-Stylus_D78" /> - <printer translate="name" name="Epson Stylus D88" deviceid="MFG:EPSON;MDL:Stylus D88;DES:EPSON Stylus D88;CMD:ESCPL2,BDC,D4;" driver="escp2-d88" manufacturer="Epson" model="69" parameters="standard_params" foomaticid="Epson-Stylus_D88" /> - <printer translate="name" name="Epson Stylus D92" deviceid="MFG:EPSON;CMD:ESCPL2,BDC,D4,D4PX;MDL:Stylus D92;DES:EPSON Stylus D92;" driver="escp2-d92" manufacturer="Epson" model="66" parameters="standard_params" foomaticid="Epson-Stylus_D92" /> - <printer translate="name" name="Epson Stylus D120" driver="escp2-d120" manufacturer="Epson" model="85" parameters="standard_params" foomaticid="Epson-Stylus_D120" /> - <printer translate="name" name="Epson Stylus DX3800" deviceid="MFG:EPSON;MDL:Stylus DX3800;DES:EPSON Stylus DX3800;CMD:ESCPL2,BDC,D4;" driver="escp2-dx3800" manufacturer="Epson" model="72" parameters="standard_params" foomaticid="Epson-Stylus_DX3800" /> - <printer translate="name" name="Epson Stylus DX3850" deviceid="MFG:EPSON;MDL:Stylus DX3850;DES:EPSON Stylus DX3850;CMD:ESCPL2,BDC,D4;" driver="escp2-dx3850" manufacturer="Epson" model="72" parameters="standard_params" foomaticid="Epson-Stylus_DX3850" /> - <printer translate="name" name="Epson Stylus DX4000" driver="escp2-dx4000" manufacturer="Epson" model="72" parameters="standard_params" foomaticid="Epson-Stylus_DX4000" /> - <printer translate="name" name="Epson Stylus DX4050" driver="escp2-dx4050" manufacturer="Epson" model="72" parameters="standard_params" foomaticid="Epson-Stylus_DX4050" /> - <printer translate="name" name="Epson Stylus DX4200" deviceid="MFG:EPSON;MDL:Stylus DX4200;DES:EPSON Stylus DX4200;CMD:ESCPL2,BDC,D4;" driver="escp2-dx4200" manufacturer="Epson" model="95" parameters="cx3500_params" foomaticid="Epson-Stylus_DX4200" /> - <printer translate="name" name="Epson Stylus DX4250" deviceid="MFG:EPSON;MDL:Stylus DX4250;DES:EPSON Stylus DX4250;CMD:ESCPL2,BDC,D4;" driver="escp2-dx4250" manufacturer="Epson" model="95" parameters="cx3500_params" foomaticid="Epson-Stylus_DX4250" /> - <printer translate="name" name="Epson Stylus DX4400" driver="escp2-dx4400" manufacturer="Epson" model="72" parameters="standard_params" foomaticid="Epson-Stylus_DX4400" /> - <printer translate="name" name="Epson Stylus DX4450" driver="escp2-dx4450" manufacturer="Epson" model="72" parameters="standard_params" foomaticid="Epson-Stylus_DX4450" /> - <printer translate="name" name="Epson Stylus DX4800" deviceid="MFG:EPSON;MDL:Stylus DX4800;DES:EPSON Stylus DX4800;CMD:ESCPL2,BDC,D4;" driver="escp2-dx4800" manufacturer="Epson" model="95" parameters="standard_params" foomaticid="Epson-Stylus_DX4800" /> - <printer translate="name" name="Epson Stylus DX4850" driver="escp2-dx4850" manufacturer="Epson" model="95" parameters="standard_params" foomaticid="Epson-Stylus_DX4850" /> - <printer translate="name" name="Epson Stylus DX7000F" driver="escp2-dx7000f" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_DX7000F" /> - <printer translate="name" name="Epson Stylus DX7400" driver="escp2-dx7400" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_DX7400" /> - <printer translate="name" name="Epson Stylus DX7450" driver="escp2-dx7450" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_DX7450" /> - <printer translate="name" name="Epson Stylus DX8400" driver="escp2-dx8400" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_DX8400" /> - <printer translate="name" name="Epson Stylus DX8450" driver="escp2-dx8450" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_DX8450" /> - <printer translate="name" name="Epson Stylus DX9400F" driver="escp2-dx9400f" manufacturer="Epson" model="65" parameters="cx3500_params" foomaticid="Epson-Stylus_DX9400F" /> - <printer translate="name" name="Epson Stylus NX100" driver="escp2-nx100" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_NX100" /> - <printer translate="name" name="Epson Stylus NX105" driver="escp2-nx105" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_NX105" /> - <printer translate="name" name="Epson Stylus NX115" driver="escp2-nx115" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_NX115" /> - <printer translate="name" name="Epson Stylus NX200" driver="escp2-nx200" manufacturer="Epson" model="93" parameters="standard_params" foomaticid="Epson-Stylus_NX200" /> - <printer translate="name" name="Epson Stylus NX215" driver="escp2-nx215" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_NX215" /> - <printer translate="name" name="Epson Stylus NX300" driver="escp2-nx300" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_NX300" /> - <printer translate="name" name="Epson Stylus NX400" driver="escp2-nx400" manufacturer="Epson" model="93" parameters="standard_params" foomaticid="Epson-Stylus_NX400" /> - <printer translate="name" name="Epson Stylus NX415" driver="escp2-nx415" manufacturer="Epson" model="93" parameters="standard_params" foomaticid="Epson-Stylus_NX415" /> - <printer translate="name" name="Epson Stylus NX420" driver="escp2-nx420" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_NX420" /> - <printer translate="name" name="Epson Stylus NX515" driver="escp2-nx515" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_NX515" /> - <printer translate="name" name="Epson Stylus NX530" driver="escp2-nx530" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_NX530" /> - <printer translate="name" name="Epson Stylus NX630" driver="escp2-nx630" manufacturer="Epson" model="118" parameters="standard_params" foomaticid="Epson-Stylus_NX630" /> - <printer translate="name" name="Epson Stylus NX635" driver="escp2-nx635" manufacturer="Epson" model="118" parameters="standard_params" foomaticid="Epson-Stylus_NX635" /> - <printer translate="name" name="Epson Stylus NX645" driver="escp2-nx645" manufacturer="Epson" model="118" parameters="standard_params" foomaticid="Epson-Stylus_NX645" /> - <printer translate="name" name="Epson Stylus Photo PX650" driver="escp2-px650" manufacturer="Epson" model="97" parameters="standard_params" foomaticid="Epson-Stylus_Photo_PX650" /> - <printer translate="name" name="Epson Stylus Photo PX700W" driver="escp2-px700fw" manufacturer="Epson" model="96" parameters="claria_params" foomaticid="Epson-Stylus_Photo_PX700W" /> - <printer translate="name" name="Epson Stylus Photo PX710W" driver="escp2-px710fw" manufacturer="Epson" model="96" parameters="claria_params" foomaticid="Epson-Stylus_Photo_PX710W" /> - <printer translate="name" name="Epson Stylus Photo PX800FW" driver="escp2-px800fw" manufacturer="Epson" model="96" parameters="claria_params" foomaticid="Epson-Stylus_Photo_PX800FW" /> - <printer translate="name" name="Epson Stylus Photo PX810FW" driver="escp2-px810fw" manufacturer="Epson" model="96" parameters="claria_params" foomaticid="Epson-Stylus_Photo_PX810FW" /> - <printer translate="name" name="Epson Stylus S20" driver="escp2-s20" manufacturer="Epson" model="101" parameters="standard_params" foomaticid="Epson-Stylus_S20" /> - <printer translate="name" name="Epson Stylus S21" driver="escp2-s21" manufacturer="Epson" model="101" parameters="standard_params" foomaticid="Epson-Stylus_S21" /> - <printer translate="name" name="Epson Stylus S50" driver="escp2-s50" manufacturer="Epson" model="97" parameters="standard_params" foomaticid="Epson-Stylus_Photo_S50" /> - <printer translate="name" name="Epson Stylus SX100" driver="escp2-sx100" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_SX100" /> - <printer translate="name" name="Epson Stylus SX105" driver="escp2-sx105" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_SX105" /> - <printer translate="name" name="Epson Stylus SX110" driver="escp2-sx110" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_SX110" /> - <printer translate="name" name="Epson Stylus SX115" driver="escp2-sx115" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_SX115" /> - <printer translate="name" name="Epson Stylus SX200" driver="escp2-sx200" manufacturer="Epson" model="93" parameters="standard_params" foomaticid="Epson-Stylus_SX200" /> - <printer translate="name" name="Epson Stylus SX205" driver="escp2-sx205" manufacturer="Epson" model="93" parameters="standard_params" foomaticid="Epson-Stylus_SX205" /> - <printer translate="name" name="Epson Stylus SX210" driver="escp2-sx210" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_SX210" /> - <printer translate="name" name="Epson Stylus SX215" driver="escp2-sx215" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_SX215" /> - <printer translate="name" name="Epson Stylus SX400" driver="escp2-sx400" manufacturer="Epson" model="93" parameters="standard_params" foomaticid="Epson-Stylus_SX400" /> - <printer translate="name" name="Epson Stylus SX405" driver="escp2-sx405" manufacturer="Epson" model="93" parameters="standard_params" foomaticid="Epson-Stylus_SX405" /> - <printer translate="name" name="Epson Stylus SX410" driver="escp2-sx410" manufacturer="Epson" model="93" parameters="standard_params" foomaticid="Epson-Stylus_SX410" /> - <printer translate="name" name="Epson Stylus SX415" driver="escp2-sx415" manufacturer="Epson" model="93" parameters="standard_params" foomaticid="Epson-Stylus_SX415" /> - <printer translate="name" name="Epson Stylus SX420" driver="escp2-sx420" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_SX420" /> - <printer translate="name" name="Epson Stylus SX445W" driver="escp2-sx445w" manufacturer="Epson" model="121" parameters="standard_params" foomaticid="Epson-Stylus_SX445w" /> - <printer translate="name" name="Epson Stylus SX510W" driver="escp2-sx510w" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_SX510W" /> - <printer translate="name" name="Epson Stylus SX515" driver="escp2-sx515" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_SX515" /> - <printer translate="name" name="Epson Stylus SX525" driver="escp2-sx525" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_SX525" /> - <printer translate="name" name="Epson Stylus SX535FW" driver="escp2-sx535FW" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_SX535FW" /> - <printer translate="name" name="Epson Stylus SX600FW" driver="escp2-sx600fw" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_SX600FW" /> - <printer translate="name" name="Epson Stylus SX610FW" driver="escp2-sx610fw" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_SX610FW" /> - <printer translate="name" name="Epson Stylus SX615" driver="escp2-sx615" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_SX615" /> - <printer translate="name" name="Epson Stylus SX630" driver="escp2-sx630" manufacturer="Epson" model="118" parameters="standard_params" foomaticid="Epson-Stylus_SX630" /> - <printer translate="name" name="Epson Stylus SX635" driver="escp2-sx635" manufacturer="Epson" model="118" parameters="standard_params" foomaticid="Epson-Stylus_SX635" /> - <printer translate="name" name="Epson Stylus SX645" driver="escp2-sx645" manufacturer="Epson" model="118" parameters="standard_params" foomaticid="Epson-Stylus_SX645" /> - <printer translate="name" name="Epson Stylus SX650" driver="escp2-sx650" manufacturer="Epson" model="97" parameters="standard_params" foomaticid="Epson-Stylus_SX650" /> - <printer translate="name" name="Epson Stylus T13" driver="escp2-t13" manufacturer="Epson" model="101" parameters="standard_params" foomaticid="Epson-Stylus_T13" /> - <printer translate="name" name="Epson Stylus T20" driver="escp2-t20" manufacturer="Epson" model="101" parameters="standard_params" foomaticid="Epson-Stylus_T20" /> - <printer translate="name" name="Epson Stylus T21" driver="escp2-t21" manufacturer="Epson" model="101" parameters="standard_params" foomaticid="Epson-Stylus_T21" /> - <printer translate="name" name="Epson Stylus T22" driver="escp2-t22" manufacturer="Epson" model="101" parameters="standard_params" foomaticid="Epson-Stylus_T22" /> - <printer translate="name" name="Epson Stylus T22E" driver="escp2-t22e" manufacturer="Epson" model="101" parameters="standard_params" foomaticid="Epson-Stylus_T22E" /> - <printer translate="name" name="Epson Stylus T26" driver="escp2-t26" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_T26" /> - <printer translate="name" name="Epson Stylus T30" driver="escp2-t30" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_T30" /> - <printer translate="name" name="Epson Stylus T40W" driver="escp2-t40w" manufacturer="Epson" model="85" parameters="standard_params" foomaticid="Epson-Stylus_T40W" /> - <printer translate="name" name="Epson Stylus T50" driver="escp2-t50" manufacturer="Epson" model="97" parameters="standard_params" foomaticid="Epson-Stylus_T50" /> - <printer translate="name" name="Epson Stylus T59" driver="escp2-t59" manufacturer="Epson" model="97" parameters="claria_params" foomaticid="Epson-Stylus_T59" /> - <printer translate="name" name="Epson Stylus T60" driver="escp2-t60" manufacturer="Epson" model="97" parameters="claria_params" foomaticid="Epson-Stylus_T60" /> - <printer translate="name" name="Epson Stylus TX100" driver="escp2-tx100" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_TX100" /> - <printer translate="name" name="Epson Stylus TX101" driver="escp2-tx101" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_TX101" /> - <printer translate="name" name="Epson Stylus TX102" driver="escp2-tx102" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_TX102" /> - <printer translate="name" name="Epson Stylus TX103" driver="escp2-tx103" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_TX103" /> - <printer translate="name" name="Epson Stylus TX104" driver="escp2-tx104" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_TX104" /> - <printer translate="name" name="Epson Stylus TX105" driver="escp2-tx105" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_TX105" /> - <printer translate="name" name="Epson Stylus TX106" driver="escp2-tx106" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_TX106" /> - <printer translate="name" name="Epson Stylus TX109" driver="escp2-tx109" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_TX109" /> - <printer translate="name" name="Epson Stylus TX110" driver="escp2-tx110" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_TX110" /> - <printer translate="name" name="Epson Stylus TX125" driver="escp2-tx125" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_TX125" /> - <printer translate="name" name="Epson Stylus TX200" driver="escp2-tx200" manufacturer="Epson" model="93" parameters="standard_params" foomaticid="Epson-Stylus_TX200" /> + <printer translate="name" name="Epson Stylus Photo 785" deviceid="MFG:EPSON;MDL:Stylus Photo 785EPX;DES:EPSON Stylus Photo 785EPX;CMD:ESCPL2,BDC,D4;" driver="escp2-785" manufacturer="Epson" model="36" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 790" deviceid="MFG:EPSON;MDL:Stylus Photo 790;DES:EPSON Stylus Photo 790;CMD:ESCPL2,BDC,D4;" driver="escp2-790" manufacturer="Epson" model="35" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 810" driver="escp2-810" manufacturer="Epson" model="78" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 820" deviceid="MFG:EPSON;MDL:Stylus Photo 820;DES:EPSON Stylus Photo 820;CMD:ESCPL2,BDC,D4;" driver="escp2-820" manufacturer="Epson" model="78" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 825" deviceid="MFG:EPSON;MDL:Stylus Photo 825;DES:EPSON Stylus Photo 825;CMD:ESCPL2,BDC,D4;" driver="escp2-825" manufacturer="Epson" model="50" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 830" deviceid="MFG:EPSON;MDL:Stylus Photo 830U;DES:EPSON Stylus Photo 830U;CMD:ESCPL2,BDC,D4;" driver="escp2-830" manufacturer="Epson" model="50" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 830U" deviceid="MFG:EPSON;MDL:Stylus Photo 830U;DES:EPSON Stylus Photo 830U;CMD:ESCPL2,BDC,D4;" driver="escp2-830u" manufacturer="Epson" model="50" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 870" deviceid="MFG:EPSON;MDL:Stylus Photo 870;DES:EPSON Stylus Photo 870;CMD:ESCPL2,BDC,D4;" driver="escp2-870" manufacturer="Epson" model="22" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 875" driver="escp2-875" manufacturer="Epson" model="22" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 890" deviceid="MFG:EPSON;MDL:Stylus Photo 890;DES:EPSON Stylus Photo 890;CMD:ESCPL2,BDC,D4;" driver="escp2-890" manufacturer="Epson" model="36" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 895" deviceid="MFG:EPSON;MDL:Stylus Photo 895;DES:EPSON Stylus Photo 895;CMD:ESCPL2,BDC,D4;" driver="escp2-895" manufacturer="Epson" model="36" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 900" deviceid="MFG:EPSON;MDL:Stylus Photo 900;DES:EPSON Stylus Photo 900;CMD:ESCPL2,BDC,D4;" driver="escp2-ph900" manufacturer="Epson" model="62" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 915" deviceid="MFG:EPSON;MDL:Stylus Photo 915;DES:EPSON Stylus Photo 915;CMD:ESCPL2,BDC,D4;" driver="escp2-915" manufacturer="Epson" model="36" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 925" driver="escp2-925" manufacturer="Epson" model="51" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 935" deviceid="MFG:EPSON;MDL:Stylus Photo 935;DES:EPSON Stylus Photo 935;CMD:ESCPL2,BDC,D4;" driver="escp2-935" manufacturer="Epson" model="36" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 950" driver="escp2-950" manufacturer="Epson" model="46" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 960" driver="escp2-960" manufacturer="Epson" model="46" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 1200" driver="escp2-1200" manufacturer="Epson" model="15" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 1270" deviceid="MFG:EPSON;MDL:Stylus Photo 1270;DES:EPSON Stylus Photo 1270;CMD:ESCPL2,BDC,D4;CLS:PRINTER;" driver="escp2-1270" manufacturer="Epson" model="23" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 1280" driver="escp2-1280" manufacturer="Epson" model="37" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 1290" driver="escp2-1290" manufacturer="Epson" model="37" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 1290s" driver="escp2-1290s" manufacturer="Epson" model="37" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 1400" deviceid="MFG:EPSON;MDL:Stylus Photo 1400;DES:EPSON Stylus Photo 1400;CMD:ESCPL2,BDC,D4,D4PX,ESCPR1;" driver="escp2-1400" manufacturer="Epson" model="82" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo 1410" driver="escp2-1410" manufacturer="Epson" model="82" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo 2000P" driver="escp2-2000" manufacturer="Epson" model="26" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 2100" driver="escp2-2100" manufacturer="Epson" model="47" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo 2200" driver="escp2-2200" manufacturer="Epson" model="47" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo P50" driver="escp2-p50" manufacturer="Epson" model="97" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo R200" deviceid="MFG:EPSON;MDL:Stylus Photo R200;DES:EPSON Stylus Photo R200;CMD:ESCPL2,BDC,D4;" driver="escp2-r200" manufacturer="Epson" model="63" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo R210" deviceid="MFG:EPSON;MDL:Stylus Photo R210;DES:EPSON Stylus Photo R210;CMD:ESCPL2,BDC,D4;" driver="escp2-r210" manufacturer="Epson" model="63" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo R220" deviceid="MFG:EPSON;MDL:Stylus Photo R220;DES:EPSON Stylus Photo R220;CMD:ESCPL2,BDC,D4;" driver="escp2-r220" manufacturer="Epson" model="84" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo R230" deviceid="MFG:EPSON;MDL:Stylus Photo R230;" driver="escp2-r230" manufacturer="Epson" model="84" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo R240" driver="escp2-r240" manufacturer="Epson" model="83" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo R245" driver="escp2-r245" manufacturer="Epson" model="83" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo R260" driver="escp2-r260" manufacturer="Epson" model="81" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo R265" driver="escp2-r265" manufacturer="Epson" model="81" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo R270" driver="escp2-r270" manufacturer="Epson" model="81" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo R280" driver="escp2-r280" manufacturer="Epson" model="81" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo R285" driver="escp2-r285" manufacturer="Epson" model="81" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo R290" driver="escp2-r290" manufacturer="Epson" model="81" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo R300" deviceid="MFG:EPSON;MDL:Stylus Photo R300;DES:EPSON Stylus Photo R300;" driver="escp2-r300" manufacturer="Epson" model="63" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo R310" deviceid="MFG:EPSON;MDL:Stylus Photo R310;DES:EPSON Stylus Photo R310;" driver="escp2-r310" manufacturer="Epson" model="63" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo R320" deviceid="MFG:EPSON;MDL:Stylus Photo R320;DES:EPSON Stylus Photo R320;" driver="escp2-r320" manufacturer="Epson" model="63" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo R340" deviceid="MFG:EPSON;MDL:Stylus Photo R340;DES:EPSON Stylus Photo R340;" driver="escp2-r340" manufacturer="Epson" model="84" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo R350" driver="escp2-r350" manufacturer="Epson" model="84" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo R360" driver="escp2-r360" manufacturer="Epson" model="81" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo R380" driver="escp2-r380" manufacturer="Epson" model="81" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo R390" driver="escp2-r390" manufacturer="Epson" model="81" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo R800" driver="escp2-r800" manufacturer="Epson" model="64" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo R1800" driver="escp2-r1800" manufacturer="Epson" model="67" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo R1900" driver="escp2-r1900" manufacturer="Epson" model="91" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo R2000" driver="escp2-r2000" manufacturer="Epson" model="91" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo R2400" deviceid="MFG:EPSON;MDL:Stylus Photo R2400;DES:EPSON Stylus Photo R2400;CMD:ESCPL2,BDC,D4;" driver="escp2-r2400" manufacturer="Epson" model="71" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo R2880" driver="escp2-r2880" manufacturer="Epson" model="98" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo R3000" driver="escp2-r3000" manufacturer="Epson" model="115" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo RX400" deviceid="MFG:EPSON;MDL:Stylus Photo RX400;DES:EPSON Stylus Photo RX400;CMD:ESCPL2,BDC,D4;" driver="escp2-rx400" manufacturer="Epson" model="84" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo RX420" deviceid="MFG:EPSON;MDL:Stylus Photo RX420;DES:EPSON Stylus Photo RX420;CMD:ESCPL2,BDC,D4;" driver="escp2-rx420" manufacturer="Epson" model="84" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo RX425" deviceid="MFG:EPSON;MDL:Stylus Photo RX425;DES:EPSON Stylus Photo RX425;CMD:ESCPL2,BDC,D4;" driver="escp2-rx425" manufacturer="Epson" model="84" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo RX430" deviceid="MFG:EPSON;MDL:Stylus Photo RX430;DES:EPSON Stylus Photo RX430;CMD:ESCPL2,BDC,D4;" driver="escp2-rx430" manufacturer="Epson" model="84" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo RX500" deviceid="MFG:EPSON;MDL:Stylus Photo RX500;DES:EPSON Stylus Photo RX500;CMD:ESCPL2,BDC,D4;" driver="escp2-rx500" manufacturer="Epson" model="84" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo RX510" deviceid="MFG:EPSON;MDL:Stylus Photo RX510;DES:EPSON Stylus Photo RX510;CMD:ESCPL2,BDC,D4;" driver="escp2-rx510" manufacturer="Epson" model="84" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo RX560" driver="escp2-rx560" manufacturer="Epson" model="81" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo RX580" driver="escp2-rx580" manufacturer="Epson" model="81" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo RX585" driver="escp2-rx585" manufacturer="Epson" model="81" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo RX590" driver="escp2-rx590" manufacturer="Epson" model="81" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo RX595" driver="escp2-rx595" manufacturer="Epson" model="81" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo RX600" driver="escp2-rx600" manufacturer="Epson" model="84" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo RX610" driver="escp2-rx610" manufacturer="Epson" model="81" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo RX620" deviceid="MFG:EPSON;MDL:Stylus Photo RX620;DES:EPSON Stylus Photo RX620;CMD:ESCPL2,BDC,D4;" driver="escp2-rx620" manufacturer="Epson" model="84" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo RX630" deviceid="MFG:EPSON;MDL:Stylus Photo RX630;DES:EPSON Stylus Photo RX630;CMD:ESCPL2,BDC,D4;" driver="escp2-rx630" manufacturer="Epson" model="84" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo RX640" driver="escp2-rx640" manufacturer="Epson" model="81" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo RX650" driver="escp2-rx650" manufacturer="Epson" model="81" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo RX680" driver="escp2-rx680" manufacturer="Epson" model="97" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo RX685" driver="escp2-rx685" manufacturer="Epson" model="97" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo RX690" driver="escp2-rx690" manufacturer="Epson" model="97" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo RX700" deviceid="MFG:EPSON;MDL:Stylus Photo RX700;DES:EPSON Stylus Photo RX700;CMD:ESCPL2,BDC,D4;" driver="escp2-rx700" manufacturer="Epson" model="70" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo TX700W" driver="escp2-tx700w" manufacturer="Epson" model="96" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo TX710W" driver="escp2-tx710w" manufacturer="Epson" model="96" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo TX800FW" driver="escp2-tx800w" manufacturer="Epson" model="96" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo TX810FW" driver="escp2-tx810fw" manufacturer="Epson" model="96" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Pro 3800" driver="escp2-3800" manufacturer="Epson" model="108" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 3880" driver="escp2-3880" manufacturer="Epson" model="107" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 3885" driver="escp2-3885" manufacturer="Epson" model="107" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 4000" driver="escp2-4000" manufacturer="Epson" model="114" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 4800/4880 Back Compatible" driver="escp2-4600" manufacturer="Epson" model="112" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 4800" driver="escp2-4800" manufacturer="Epson" model="106" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 4880" driver="escp2-4880" manufacturer="Epson" model="102" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 5000" driver="escp2-5000" manufacturer="Epson" model="27" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 5500" driver="escp2-5500" manufacturer="Epson" model="40" parameters="pro_5500_params" /> + <printer translate="name" name="Epson Stylus Pro 7000" driver="escp2-7000" manufacturer="Epson" model="28" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 7500" driver="escp2-7500" manufacturer="Epson" model="29" parameters="pro_5500_params" /> + <printer translate="name" name="Epson Stylus Pro 7600" driver="escp2-7600" manufacturer="Epson" model="48" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 7700" driver="escp2-7700" manufacturer="Epson" model="109" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 7800" driver="escp2-7800" manufacturer="Epson" model="103" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 7880" driver="escp2-7880" manufacturer="Epson" model="89" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 7890" driver="escp2-7890" manufacturer="Epson" model="89" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 7900" driver="escp2-7900" manufacturer="Epson" model="116" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 9000" driver="escp2-9000" manufacturer="Epson" model="30" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 9500" driver="escp2-9500" manufacturer="Epson" model="31" parameters="pro_5500_params" /> + <printer translate="name" name="Epson Stylus Pro 9600" driver="escp2-9600" manufacturer="Epson" model="49" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 9700" driver="escp2-9700" manufacturer="Epson" model="110" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 9800" driver="escp2-9800" manufacturer="Epson" model="104" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 9880" driver="escp2-9880" manufacturer="Epson" model="90" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 9890" driver="escp2-9890" manufacturer="Epson" model="90" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 9900" driver="escp2-9900" manufacturer="Epson" model="117" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 10000" driver="escp2-10000" manufacturer="Epson" model="41" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 11800/11880 Back Compatible" driver="escp2-11600" manufacturer="Epson" model="113" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 11800" driver="escp2-11800" manufacturer="Epson" model="105" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Pro 11880" driver="escp2-11880" manufacturer="Epson" model="88" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Scan 2000" driver="escp2-scan2000" manufacturer="Epson" model="12" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Scan 2500" driver="escp2-scan2500" manufacturer="Epson" model="12" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus CX1500" deviceid="MFG:EPSON;MDL:Stylus CX1500;DES:EPSON Stylus CX1500;CMD:ESCPL2,BDC,D4;" driver="escp2-cx1500" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson Stylus CX3100" deviceid="MFG:EPSON;MDL:Stylus CX3100;DES:EPSON Stylus CX3100;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3100" manufacturer="Epson" model="52" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus CX3200" deviceid="MFG:EPSON;MDL:Stylus CX3200;DES:EPSON Stylus CX3200;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3200" manufacturer="Epson" model="52" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus CX3500" deviceid="MFG:EPSON;MDL:Stylus CX3500;DES:EPSON Stylus CX3500;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3500" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX3600" deviceid="MFG:EPSON;MDL:Stylus CX3600;DES:EPSON Stylus CX3600;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3600" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX3650" deviceid="MFG:EPSON;MDL:Stylus CX3650;DES:EPSON Stylus CX3650;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3650" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX3700" deviceid="MFG:EPSON;MDL:Stylus CX3700;DES:EPSON Stylus CX3700;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3700" manufacturer="Epson" model="72" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus CX3800" deviceid="MFG:EPSON;MDL:Stylus CX3800;DES:EPSON Stylus CX3800;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3800" manufacturer="Epson" model="72" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus CX3805" deviceid="MFG:EPSON;MDL:Stylus CX3805;DES:EPSON Stylus CX3805;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3805" manufacturer="Epson" model="72" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus CX3810" deviceid="MFG:EPSON;MDL:Stylus CX3810;DES:EPSON Stylus CX3810;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3810" manufacturer="Epson" model="72" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus CX3900" deviceid="MFG:EPSON;MDL:Stylus CX3900;DES:EPSON Stylus CX3900;CMD:ESCPL2,BDC,D4;" driver="escp2-cx3900" manufacturer="Epson" model="72" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus CX4100" deviceid="MFG:EPSON;MDL:Stylus CX4100;DES:EPSON Stylus CX4100;CMD:ESCPL2,BDC,D4;" driver="escp2-cx4100" manufacturer="Epson" model="95" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX4200" deviceid="MFG:EPSON;MDL:Stylus CX4200;DES:EPSON Stylus CX4200;CMD:ESCPL2,BDC,D4;" driver="escp2-cx4200" manufacturer="Epson" model="95" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX4400" driver="escp2-cx4400" manufacturer="Epson" model="72" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus CX4500" deviceid="MFG:EPSON;MDL:Stylus CX4500;DES:EPSON Stylus CX4500;CMD:ESCPL2,BDC,D4;" driver="escp2-cx4500" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX4600" deviceid="MFG:EPSON;MDL:Stylus CX4600;DES:EPSON Stylus CX4600;CMD:ESCPL2,BDC,D4;" driver="escp2-cx4600" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX4700" deviceid="MFG:EPSON;MDL:Stylus CX4700;DES:EPSON Stylus CX4700;CMD:ESCPL2,BDC,D4;" driver="escp2-cx4700" manufacturer="Epson" model="95" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX4800" deviceid="MFG:EPSON;MDL:Stylus CX4800;DES:EPSON Stylus CX4800;CMD:ESCPL2,BDC,D4;" driver="escp2-cx4800" manufacturer="Epson" model="95" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX4900" driver="escp2-cx4900" manufacturer="Epson" model="95" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX5000" driver="escp2-cx5000" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX5000F" driver="escp2-cx5000f" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX5100" deviceid="MFG:EPSON;MDL:Stylus CX5100;DES:EPSON Stylus CX5100;CMD:ESCPL2,BDC,D4;" driver="escp2-cx5100" manufacturer="Epson" model="55" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX5200" driver="escp2-cx5200" manufacturer="Epson" model="55" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX5300" deviceid="MFG:EPSON;MDL:Stylus CX5300;DES:EPSON Stylus CX5300;CMD:ESCPL2,BDC,D4;" driver="escp2-cx5300" manufacturer="Epson" model="55" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX5400" deviceid="MFG:EPSON;MDL:Stylus CX5400;DES:EPSON Stylus CX5400;CMD:ESCPL2,BDC,D4;" driver="escp2-cx5400" manufacturer="Epson" model="55" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX5500" driver="escp2-cx5500" manufacturer="Epson" model="72" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus CX5600" driver="escp2-cx5600" manufacturer="Epson" model="72" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus CX5700" deviceid="MFG:EPSON;MDL:Stylus CX5700;DES:EPSON Stylus CX5700;CMD:ESCPL2,BDC,D4;" driver="escp2-cx5700" manufacturer="Epson" model="95" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX5800" deviceid="MFG:EPSON;MDL:Stylus CX5800;DES:EPSON Stylus CX5800;CMD:ESCPL2,BDC,D4;" driver="escp2-cx5800" manufacturer="Epson" model="95" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX6000" driver="escp2-cx6000" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX6300" deviceid="MFG:EPSON;MDL:Stylus CX6300;DES:EPSON Stylus CX6300;CMD:ESCPL2,BDC,D4;" driver="escp2-cx6300" manufacturer="Epson" model="79" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX6400" driver="escp2-cx6400" manufacturer="Epson" model="79" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX6500" deviceid="MFG:EPSON;MDL:Stylus CX6500;DES:EPSON Stylus CX6500;CMD:ESCPL2,BDC,D4;" driver="escp2-cx6500" manufacturer="Epson" model="80" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX6600" deviceid="MFG:EPSON;MDL:Stylus CX6600;DES:EPSON Stylus CX6600;CMD:ESCPL2,BDC,D4;" driver="escp2-cx6600" manufacturer="Epson" model="80" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX7000F" driver="escp2-cx7000f" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX7300" driver="escp2-cx7300" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX7400" driver="escp2-cx7400" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX7700" deviceid="MFG:EPSON;MDL:Stylus CX7700;DES:EPSON Stylus CX7700;CMD:ESCPL2,BDC,D4;" driver="escp2-cx7700" manufacturer="Epson" model="95" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX7800" deviceid="MFG:EPSON;MDL:Stylus CX7800;DES:EPSON Stylus CX7800;CMD:ESCPL2,BDC,D4;" driver="escp2-cx7800" manufacturer="Epson" model="95" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX8300" deviceid="MFG:EPSON;MDL:Stylus CX8300;DES:EPSON Stylus CX8300;CMD:ESCPL2,BDC,D4;" driver="escp2-cx8300" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX8400" deviceid="MFG:EPSON;MDL:Stylus CX8400;DES:EPSON Stylus CX8400;CMD:ESCPL2,BDC,D4;" driver="escp2-cx8400" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX9300F" driver="escp2-cx9300f" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX9400" driver="escp2-cx9400" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX9400F" driver="escp2-cx9400f" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus CX9475F" driver="escp2-cx9475f" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus D68" deviceid="MFG:EPSON;MDL:Stylus D68;DES:EPSON Stylus D68;CMD:ESCPL2,BDC,D4;" driver="escp2-d68" manufacturer="Epson" model="66" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus D78" deviceid="MFG:EPSON;MDL:Stylus D78;DES:EPSON Stylus D78;CMD:ESCPL2,BDC,D4,D4PX;" driver="escp2-d78" manufacturer="Epson" model="66" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus D88" deviceid="MFG:EPSON;MDL:Stylus D88;DES:EPSON Stylus D88;CMD:ESCPL2,BDC,D4;" driver="escp2-d88" manufacturer="Epson" model="69" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus D92" deviceid="MFG:EPSON;CMD:ESCPL2,BDC,D4,D4PX;MDL:Stylus D92;DES:EPSON Stylus D92;" driver="escp2-d92" manufacturer="Epson" model="66" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus D120" driver="escp2-d120" manufacturer="Epson" model="85" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus DX3800" deviceid="MFG:EPSON;MDL:Stylus DX3800;DES:EPSON Stylus DX3800;CMD:ESCPL2,BDC,D4;" driver="escp2-dx3800" manufacturer="Epson" model="72" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus DX3850" deviceid="MFG:EPSON;MDL:Stylus DX3850;DES:EPSON Stylus DX3850;CMD:ESCPL2,BDC,D4;" driver="escp2-dx3850" manufacturer="Epson" model="72" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus DX4000" driver="escp2-dx4000" manufacturer="Epson" model="72" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus DX4050" driver="escp2-dx4050" manufacturer="Epson" model="72" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus DX4200" deviceid="MFG:EPSON;MDL:Stylus DX4200;DES:EPSON Stylus DX4200;CMD:ESCPL2,BDC,D4;" driver="escp2-dx4200" manufacturer="Epson" model="95" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus DX4250" deviceid="MFG:EPSON;MDL:Stylus DX4250;DES:EPSON Stylus DX4250;CMD:ESCPL2,BDC,D4;" driver="escp2-dx4250" manufacturer="Epson" model="95" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus DX4400" driver="escp2-dx4400" manufacturer="Epson" model="72" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus DX4450" driver="escp2-dx4450" manufacturer="Epson" model="72" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus DX4800" deviceid="MFG:EPSON;MDL:Stylus DX4800;DES:EPSON Stylus DX4800;CMD:ESCPL2,BDC,D4;" driver="escp2-dx4800" manufacturer="Epson" model="95" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus DX4850" driver="escp2-dx4850" manufacturer="Epson" model="95" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus DX7000F" driver="escp2-dx7000f" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus DX7400" driver="escp2-dx7400" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus DX7450" driver="escp2-dx7450" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus DX8400" driver="escp2-dx8400" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus DX8450" driver="escp2-dx8450" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus DX9400F" driver="escp2-dx9400f" manufacturer="Epson" model="65" parameters="cx3500_params" /> + <printer translate="name" name="Epson Stylus NX100" driver="escp2-nx100" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus NX105" driver="escp2-nx105" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus NX115" driver="escp2-nx115" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus NX200" driver="escp2-nx200" manufacturer="Epson" model="93" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus NX215" driver="escp2-nx215" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus NX300" driver="escp2-nx300" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus NX400" driver="escp2-nx400" manufacturer="Epson" model="93" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus NX415" driver="escp2-nx415" manufacturer="Epson" model="93" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus NX420" driver="escp2-nx420" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus NX515" driver="escp2-nx515" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus NX530" driver="escp2-nx530" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus NX630" driver="escp2-nx630" manufacturer="Epson" model="118" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus NX635" driver="escp2-nx635" manufacturer="Epson" model="118" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus NX645" driver="escp2-nx645" manufacturer="Epson" model="118" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo PX650" driver="escp2-px650" manufacturer="Epson" model="97" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus Photo PX700W" driver="escp2-px700fw" manufacturer="Epson" model="96" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo PX710W" driver="escp2-px710fw" manufacturer="Epson" model="96" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo PX800FW" driver="escp2-px800fw" manufacturer="Epson" model="96" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus Photo PX810FW" driver="escp2-px810fw" manufacturer="Epson" model="96" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus S20" driver="escp2-s20" manufacturer="Epson" model="101" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus S21" driver="escp2-s21" manufacturer="Epson" model="101" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus S50" driver="escp2-s50" manufacturer="Epson" model="97" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX100" driver="escp2-sx100" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX105" driver="escp2-sx105" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX110" driver="escp2-sx110" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX115" driver="escp2-sx115" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX200" driver="escp2-sx200" manufacturer="Epson" model="93" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX205" driver="escp2-sx205" manufacturer="Epson" model="93" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX210" driver="escp2-sx210" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX215" driver="escp2-sx215" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX400" driver="escp2-sx400" manufacturer="Epson" model="93" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX405" driver="escp2-sx405" manufacturer="Epson" model="93" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX410" driver="escp2-sx410" manufacturer="Epson" model="93" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX415" driver="escp2-sx415" manufacturer="Epson" model="93" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX420" driver="escp2-sx420" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX445W" driver="escp2-sx445w" manufacturer="Epson" model="121" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX510W" driver="escp2-sx510w" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX515" driver="escp2-sx515" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX525" driver="escp2-sx525" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX535FW" driver="escp2-sx535FW" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX600FW" driver="escp2-sx600fw" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX610FW" driver="escp2-sx610fw" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX615" driver="escp2-sx615" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX630" driver="escp2-sx630" manufacturer="Epson" model="118" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX635" driver="escp2-sx635" manufacturer="Epson" model="118" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX645" driver="escp2-sx645" manufacturer="Epson" model="118" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus SX650" driver="escp2-sx650" manufacturer="Epson" model="97" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus T13" driver="escp2-t13" manufacturer="Epson" model="101" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus T20" driver="escp2-t20" manufacturer="Epson" model="101" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus T21" driver="escp2-t21" manufacturer="Epson" model="101" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus T22" driver="escp2-t22" manufacturer="Epson" model="101" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus T22E" driver="escp2-t22e" manufacturer="Epson" model="101" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus T26" driver="escp2-t26" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus T30" driver="escp2-t30" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus T40W" driver="escp2-t40w" manufacturer="Epson" model="85" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus T50" driver="escp2-t50" manufacturer="Epson" model="97" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus T59" driver="escp2-t59" manufacturer="Epson" model="97" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus T60" driver="escp2-t60" manufacturer="Epson" model="97" parameters="claria_params" /> + <printer translate="name" name="Epson Stylus TX100" driver="escp2-tx100" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX101" driver="escp2-tx101" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX102" driver="escp2-tx102" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX103" driver="escp2-tx103" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX104" driver="escp2-tx104" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX105" driver="escp2-tx105" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX106" driver="escp2-tx106" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX109" driver="escp2-tx109" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX110" driver="escp2-tx110" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX125" driver="escp2-tx125" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX200" driver="escp2-tx200" manufacturer="Epson" model="93" parameters="standard_params" /> <!-- The TX210 has the same head configuration as the TX100, not TX200 --> - <printer translate="name" name="Epson Stylus TX210" driver="escp2-tx210" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_TX210" /> - <printer translate="name" name="Epson Stylus TX300F" driver="escp2-tx300f" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_TX300F" /> - <printer translate="name" name="Epson Stylus TX400" driver="escp2-tx400" manufacturer="Epson" model="93" parameters="standard_params" foomaticid="Epson-Stylus_TX400" /> - <printer translate="name" name="Epson Stylus TX410" driver="escp2-tx410" manufacturer="Epson" model="93" parameters="standard_params" foomaticid="Epson-Stylus_TX410" /> - <printer translate="name" name="Epson Stylus TX420" driver="escp2-tx420" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-Stylus_TX420" /> - <printer translate="name" name="Epson Stylus TX510FN" driver="escp2-tx510fn" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_TX510FN" /> - <printer translate="name" name="Epson Stylus TX550W" driver="escp2-tx550w" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_TX550W" /> - <printer translate="name" name="Epson Stylus TX610FW" driver="escp2-tx610fw" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_TX610FW" /> - <printer translate="name" name="Epson Stylus TX615" driver="escp2-tx615" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-Stylus_TX615" /> - <printer translate="name" name="Epson Stylus TX630" driver="escp2-tx630" manufacturer="Epson" model="118" parameters="standard_params" foomaticid="Epson-Stylus_TX630" /> - <printer translate="name" name="Epson Stylus TX635" driver="escp2-tx635" manufacturer="Epson" model="118" parameters="standard_params" foomaticid="Epson-Stylus_TX635" /> - <printer translate="name" name="Epson Stylus TX645" driver="escp2-tx645" manufacturer="Epson" model="118" parameters="standard_params" foomaticid="Epson-Stylus_TX645" /> - <printer translate="name" name="Epson Stylus TX650" driver="escp2-tx650" manufacturer="Epson" model="97" parameters="standard_params" foomaticid="Epson-Stylus_TX650" /> - <printer translate="name" name="Epson Stylus TX659" driver="escp2-tx659" manufacturer="Epson" model="97" parameters="standard_params" foomaticid="Epson-Stylus_TX659" /> - <printer translate="name" name="Epson PictureMate" driver="escp2-picmate" manufacturer="Epson" model="73" parameters="standard_params" foomaticid="Epson-PictureMate" /> - <printer translate="name" name="Epson PictureMate Dash" driver="escp2-picmatedash" manufacturer="Epson" model="86" parameters="standard_params" foomaticid="Epson-PictureMate_Dash" /> - <printer translate="name" name="Epson PictureMate Deluxe" driver="escp2-picmated" manufacturer="Epson" model="73" parameters="standard_params" foomaticid="Epson-PictureMate_Deluxe" /> - <printer translate="name" name="Epson PictureMate Flash" driver="escp2-picmateflash" manufacturer="Epson" model="86" parameters="standard_params" foomaticid="Epson-PictureMate_Flash" /> - <printer translate="name" name="Epson PictureMate Pal" driver="escp2-picmatepal" manufacturer="Epson" model="86" parameters="standard_params" foomaticid="Epson-PictureMate_Pal" /> - <printer translate="name" name="Epson PictureMate Snap" driver="escp2-picmatesnap" manufacturer="Epson" model="86" parameters="standard_params" foomaticid="Epson-PictureMate_Snap" /> - <printer translate="name" name="Epson PictureMate 100" driver="escp2-picmate100" manufacturer="Epson" model="86" parameters="standard_params" foomaticid="Epson-PictureMate_100" /> - <printer translate="name" name="Epson PictureMate 200" driver="escp2-picmate200" manufacturer="Epson" model="73" parameters="standard_params" foomaticid="Epson-PictureMate_200" /> - <printer translate="name" name="Epson PictureMate 210" driver="escp2-picmate210" manufacturer="Epson" model="86" parameters="standard_params" foomaticid="Epson-PictureMate_210" /> - <printer translate="name" name="Epson PictureMate 215" driver="escp2-picmate215" manufacturer="Epson" model="86" parameters="standard_params" foomaticid="Epson-PictureMate_215" /> - <printer translate="name" name="Epson PictureMate 240" driver="escp2-picmate240" manufacturer="Epson" model="86" parameters="standard_params" foomaticid="Epson-PictureMate_240" /> - <printer translate="name" name="Epson PictureMate 250" driver="escp2-picmate250" manufacturer="Epson" model="86" parameters="standard_params" foomaticid="Epson-PictureMate_250" /> - <printer translate="name" name="Epson PictureMate 260" driver="escp2-picmate260" manufacturer="Epson" model="86" parameters="standard_params" foomaticid="Epson-PictureMate_260" /> - <printer translate="name" name="Epson PictureMate 270" driver="escp2-picmate270" manufacturer="Epson" model="86" parameters="standard_params" foomaticid="Epson-PictureMate_270" /> - <printer translate="name" name="Epson PictureMate 280" driver="escp2-picmate280" manufacturer="Epson" model="86" parameters="standard_params" foomaticid="Epson-PictureMate_280" /> - <printer translate="name" name="Epson PictureMate 290" driver="escp2-picmate290" manufacturer="Epson" model="86" parameters="standard_params" foomaticid="Epson-PictureMate_290" /> - <printer translate="name" name="Epson PictureMate 500" driver="escp2-picmate500" manufacturer="Epson" model="73" parameters="standard_params" foomaticid="Epson-PictureMate_500" /> - <printer translate="name" name="Epson PictureMate 2005" driver="escp2-picmate2005" manufacturer="Epson" model="73" parameters="standard_params" foomaticid="Epson-PictureMate_2005" /> - <printer translate="name" name="Epson WorkForce 30" driver="escp2-wf30" manufacturer="Epson" model="85" parameters="standard_params" foomaticid="Epson-WorkForce_30" /> - <printer translate="name" name="Epson WorkForce 40" driver="escp2-wf40" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-WorkForce_40" /> - <printer translate="name" name="Epson WorkForce 310" driver="escp2-wf310" manufacturer="Epson" model="85" parameters="standard_params" foomaticid="Epson-WorkForce_310" /> - <printer translate="name" name="Epson WorkForce 315" driver="escp2-wf315" manufacturer="Epson" model="85" parameters="standard_params" foomaticid="Epson-WorkForce_315" /> - <printer translate="name" name="Epson WorkForce 500" driver="escp2-wf500" manufacturer="Epson" model="93" parameters="standard_params" foomaticid="Epson-WorkForce_500" /> - <printer translate="name" name="Epson WorkForce 545" driver="escp2-wf545" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-WorkForce_545" /> - <printer translate="name" name="Epson WorkForce 600" driver="escp2-wf600" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-WorkForce_600" /> - <printer translate="name" name="Epson WorkForce 610" driver="escp2-wf610" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-WorkForce_610" /> - <printer translate="name" name="Epson WorkForce 615" driver="escp2-wf615" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-WorkForce_615" /> - <printer translate="name" name="Epson WorkForce 630" driver="escp2-wf630" manufacturer="Epson" model="118" parameters="standard_params" foomaticid="Epson-WorkForce_630" /> - <printer translate="name" name="Epson WorkForce 635" driver="escp2-wf636" manufacturer="Epson" model="118" parameters="standard_params" foomaticid="Epson-WorkForce_635" /> - <printer translate="name" name="Epson WorkForce 645" driver="escp2-wf645" manufacturer="Epson" model="118" parameters="standard_params" foomaticid="Epson-WorkForce_645" /> - <printer translate="name" name="Epson WorkForce 1100" driver="escp2-wf1100" manufacturer="Epson" model="99" parameters="standard_params" foomaticid="Epson-WorkForce_1100" /> - <printer translate="name" name="Epson WF-7010 Series" driver="escp2-wf7010" manufacturer="Epson" model="119" parameters="standard_params" foomaticid="Epson-WorkForce_WF-7010">EXPERIMENTAL</printer> - <printer translate="name" name="Epson WF-7011 Series" driver="escp2-wf7011" manufacturer="Epson" model="119" parameters="standard_params" foomaticid="Epson-WorkForce_WF-7011">EXPERIMENTAL</printer> - <printer translate="name" name="Epson WF-7015 Series" driver="escp2-wf7015" manufacturer="Epson" model="119" parameters="standard_params" foomaticid="Epson-WorkForce_WF-7015">EXPERIMENTAL</printer> - <printer translate="name" name="Epson WF-7018 Series" driver="escp2-wf7018" manufacturer="Epson" model="119" parameters="standard_params" foomaticid="Epson-WorkForce_WF-7018">EXPERIMENTAL</printer> - <printer translate="name" name="Epson WF-7510 Series" driver="escp2-wf7510" manufacturer="Epson" model="119" parameters="standard_params" foomaticid="Epson-WorkForce_WF-7510">EXPERIMENTAL</printer> - <printer translate="name" name="Epson WF-7511 Series" driver="escp2-wf7511" manufacturer="Epson" model="119" parameters="standard_params" foomaticid="Epson-WorkForce_WF-7511">EXPERIMENTAL</printer> - <printer translate="name" name="Epson WF-7515 Series" driver="escp2-wf7515" manufacturer="Epson" model="119" parameters="standard_params" foomaticid="Epson-WorkForce_WF-7515">EXPERIMENTAL</printer> - <printer translate="name" name="Epson WF-7520 Series" driver="escp2-wf7520" manufacturer="Epson" model="120" parameters="standard_params" foomaticid="Epson-WorkForce_WF-7520">EXPERIMENTAL</printer> - <printer translate="name" name="Epson WF-7521 Series" driver="escp2-wf7521" manufacturer="Epson" model="120" parameters="standard_params" foomaticid="Epson-WorkForce_WF-7521">EXPERIMENTAL</printer> - <printer translate="name" name="Epson WF-7525 Series" driver="escp2-wf7525" manufacturer="Epson" model="120" parameters="standard_params" foomaticid="Epson-WorkForce_WF-7525">EXPERIMENTAL</printer> - <printer translate="name" name="Epson CL 700" driver="escp2-cl700" manufacturer="Epson" model="38" parameters="480_params" foomaticid="Epson-CL_700" /> - <printer translate="name" name="Epson CL 750" driver="escp2-cl750" manufacturer="Epson" model="43" parameters="480_params" foomaticid="Epson-CL_750" /> - <printer translate="name" name="Epson CL 760" driver="escp2-cl760" manufacturer="Epson" model="56" parameters="480_params" foomaticid="Epson-CL_760" /> - <printer translate="name" name="Epson E 100" driver="escp2-e100" manufacturer="Epson" model="73" parameters="standard_params" foomaticid="Epson-E_100" /> - <printer translate="name" name="Epson E 150" driver="escp2-e150" manufacturer="Epson" model="86" parameters="standard_params" foomaticid="Epson-E_150" /> - <printer translate="name" name="Epson E 200" driver="escp2-e200" manufacturer="Epson" model="73" parameters="standard_params" foomaticid="Epson-E_200" /> - <printer translate="name" name="Epson E 300" driver="escp2-e300" manufacturer="Epson" model="86" parameters="standard_params" foomaticid="Epson-E_300" /> - <printer translate="name" name="Epson E 500" driver="escp2-e500" manufacturer="Epson" model="86" parameters="standard_params" foomaticid="Epson-E_500" /> - <printer translate="name" name="Epson E 520" driver="escp2-e520" manufacturer="Epson" model="86" parameters="standard_params" foomaticid="Epson-E_520" /> - <printer translate="name" name="Epson E 700" driver="escp2-e700" manufacturer="Epson" model="86" parameters="standard_params" foomaticid="Epson-E_700" /> - <printer translate="name" name="Epson E 720" driver="escp2-e720" manufacturer="Epson" model="86" parameters="standard_params" foomaticid="Epson-E_720" /> - <printer translate="name" name="Epson EM 900C" driver="escp2-em900c" manufacturer="Epson" model="13" parameters="standard_params" foomaticid="Epson-EM_900C" /> - <printer translate="name" name="Epson EM 930C" driver="escp2-em930c" manufacturer="Epson" model="34" parameters="standard_params" foomaticid="Epson-EM_930C" /> - <printer translate="name" name="Epson EP 302" driver="escp2-ep302" manufacturer="Epson" model="96" parameters="standard_params" foomaticid="Epson-EP_302" /> - <printer translate="name" name="Epson EP 702A" driver="escp2-ep702a" manufacturer="Epson" model="96" parameters="standard_params" foomaticid="Epson-EP_702A" /> - <printer translate="name" name="Epson EP 801A" driver="escp2-ep801a" manufacturer="Epson" model="96" parameters="standard_params" foomaticid="Epson-EP_801A" /> - <printer translate="name" name="Epson EP 901A" driver="escp2-ep901a" manufacturer="Epson" model="96" parameters="standard_params" foomaticid="Epson-EP_901A" /> - <printer translate="name" name="Epson EP 901F" driver="escp2-ep901f" manufacturer="Epson" model="96" parameters="standard_params" foomaticid="Epson-EP_801F" /> - <printer translate="name" name="Epson MC 2000" driver="escp2-mc2000" manufacturer="Epson" model="26" parameters="standard_params" foomaticid="Epson-MC_2000" /> - <printer translate="name" name="Epson MC 5000" driver="escp2-mc5000" manufacturer="Epson" model="40" parameters="pro_5500_params" foomaticid="Epson-MC_5000" /> - <printer translate="name" name="Epson MC 7000" driver="escp2-mc7000" manufacturer="Epson" model="29" parameters="pro_5500_params" foomaticid="Epson-MC_7000" /> - <printer translate="name" name="Epson MC 9000" driver="escp2-mc9000" manufacturer="Epson" model="31" parameters="pro_5500_params" foomaticid="Epson-MC_9000" /> - <printer translate="name" name="Epson MC 10000" driver="escp2-mc10000" manufacturer="Epson" model="41" parameters="standard_params" foomaticid="Epson-MC_10000" /> - <printer translate="name" name="Epson ME 300" driver="escp2-me300" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-ME_300" /> - <printer translate="name" name="Epson ME 320" driver="escp2-me320" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-ME_320" /> - <printer translate="name" name="Epson ME Office 70" driver="escp2-meof70" manufacturer="Epson" model="85" parameters="standard_params" foomaticid="Epson-ME_Office_70" /> - <printer translate="name" name="Epson ME Office 80W" driver="escp2-meof80w" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-ME_Office_80W" /> - <printer translate="name" name="Epson ME Office 360" driver="escp2-meof360" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-ME_Office_360" /> - <printer translate="name" name="Epson ME Office 600F" driver="escp2-meof600f" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-ME_Office_600F" /> - <printer translate="name" name="Epson ME Office 620F" driver="escp2-meof620f" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-ME_Office_620F" /> - <printer translate="name" name="Epson ME Office 700FW" driver="escp2-meof700fw" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-ME_Office_700FW" /> - <printer translate="name" name="Epson ME Office 940FW" driver="escp2-meof940fw" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-ME_Office_940FW" /> - <printer translate="name" name="Epson ME Office 1100" driver="escp2-meof1100" manufacturer="Epson" model="99" parameters="standard_params" foomaticid="Epson-ME_Office_1100" /> - <printer translate="name" name="Epson MJ 930C" driver="escp2-mj930c" manufacturer="Epson" model="4" parameters="standard_params" foomaticid="Epson-MJ_930C" /> - <printer translate="name" name="Epson MJ 5100C" driver="escp2-mj5100c" manufacturer="Epson" model="39" parameters="standard_params" foomaticid="Epson-MJ_5100C" /> - <printer translate="name" name="Epson MJ 6000C" driver="escp2-mj6000c" manufacturer="Epson" model="6" parameters="standard_params" foomaticid="Epson-MJ_6000C" /> - <printer translate="name" name="Epson MJ 8000C" driver="escp2-mj8000c" manufacturer="Epson" model="24" parameters="standard_params" foomaticid="Epson-MJ_8000C" /> - <printer translate="name" name="Epson PM 670C" driver="escp2-pm670c" manufacturer="Epson" model="7" parameters="standard_params" foomaticid="Epson-PM_670C" /> - <printer translate="name" name="Epson PM 700C" driver="escp2-pm700c" manufacturer="Epson" model="9" parameters="standard_params" foomaticid="Epson-PM_700C" /> - <printer translate="name" name="Epson PM 730C" driver="escp2-pm730c" manufacturer="Epson" model="35" parameters="standard_params" foomaticid="Epson-PM_730C" /> - <printer translate="name" name="Epson PM 740C" driver="escp2-pm740c" manufacturer="Epson" model="35" parameters="standard_params" foomaticid="Epson-PM_740C" /> - <printer translate="name" name="Epson PM 750C" driver="escp2-pm750c" manufacturer="Epson" model="7" parameters="standard_params" foomaticid="Epson-PM_750C" /> - <printer translate="name" name="Epson PM 760C" driver="escp2-pm760c" manufacturer="Epson" model="20" parameters="standard_params" foomaticid="Epson-PM_760C" /> - <printer translate="name" name="Epson PM 770C" driver="escp2-pm770c" manufacturer="Epson" model="14" parameters="standard_params" foomaticid="Epson-PM_770C" /> - <printer translate="name" name="Epson PM 780C" driver="escp2-pm780c" manufacturer="Epson" model="35" parameters="standard_params" foomaticid="Epson-PM_780C" /> - <printer translate="name" name="Epson PM 790PT" driver="escp2-pm790pt" manufacturer="Epson" model="36" parameters="standard_params" foomaticid="Epson-PM_790PT" /> - <printer translate="name" name="Epson PM 800C" driver="escp2-pm800c" manufacturer="Epson" model="22" parameters="standard_params" foomaticid="Epson-PM_800C" /> - <printer translate="name" name="Epson PM 850PT" driver="escp2-pm850pt" manufacturer="Epson" model="51" parameters="standard_params" foomaticid="Epson-PM_850PT" /> - <printer translate="name" name="Epson PM 870C" driver="escp2-pm870c" manufacturer="Epson" model="36" parameters="standard_params" foomaticid="Epson-PM_870C" /> - <printer translate="name" name="Epson PM 880C" driver="escp2-pm880c" manufacturer="Epson" model="36" parameters="standard_params" foomaticid="Epson-PM_880C" /> - <printer translate="name" name="Epson PM 930C" driver="escp2-pm930c" manufacturer="Epson" model="58" parameters="standard_params" foomaticid="Epson-PM_930C" /> - <printer translate="name" name="Epson PM 940C" driver="escp2-pm940c" manufacturer="Epson" model="58" parameters="standard_params" foomaticid="Epson-PM_940C" /> - <printer translate="name" name="Epson PM 950C" driver="escp2-pm950c" manufacturer="Epson" model="53" parameters="standard_params" foomaticid="Epson-PM_950C" /> - <printer translate="name" name="Epson PM 970C" driver="escp2-pm970c" manufacturer="Epson" model="57" parameters="standard_params" foomaticid="Epson-PM_970C" /> - <printer translate="name" name="Epson PM 980C" driver="escp2-pm980c" manufacturer="Epson" model="57" parameters="standard_params" foomaticid="Epson-PM_980C" /> - <printer translate="name" name="Epson PM 2000C" driver="escp2-pm2000c" manufacturer="Epson" model="8" parameters="standard_params" foomaticid="Epson-PM_2000C" /> - <printer translate="name" name="Epson PM 2200C" driver="escp2-pm2200c" manufacturer="Epson" model="54" parameters="standard_params" foomaticid="Epson-PM_2200C" /> - <printer translate="name" name="Epson PM 3000C" driver="escp2-pm3000c" manufacturer="Epson" model="15" parameters="standard_params" foomaticid="Epson-PM_3000C" /> - <printer translate="name" name="Epson PM 3300C" driver="escp2-pm3300c" manufacturer="Epson" model="23" parameters="standard_params" foomaticid="Epson-PM_3300C" /> - <printer translate="name" name="Epson PM 3500C" driver="escp2-pm3500c" manufacturer="Epson" model="37" parameters="standard_params" foomaticid="Epson-PM_3500C" /> - <printer translate="name" name="Epson PM 3700C" driver="escp2-pm3700c" manufacturer="Epson" model="37" parameters="standard_params" foomaticid="Epson-PM_3700C" /> - <printer translate="name" name="Epson PM 4000PX" driver="escp2-pm4000px" manufacturer="Epson" model="47" parameters="standard_params" foomaticid="Epson-PM_4000PX" /> - <printer translate="name" name="Epson PM 5000C" driver="escp2-pm5000c" manufacturer="Epson" model="27" parameters="standard_params" foomaticid="Epson-PM_5000C" /> - <printer translate="name" name="Epson PM 7000C" driver="escp2-pm7000c" manufacturer="Epson" model="28" parameters="standard_params" foomaticid="Epson-PM_7000C" /> - <printer translate="name" name="Epson PM 9000C" driver="escp2-pm9000c" manufacturer="Epson" model="30" parameters="standard_params" foomaticid="Epson-PM_9000C" /> - <printer translate="name" name="Epson PM 10000" driver="escp2-pm10000" manufacturer="Epson" model="41" parameters="standard_params" foomaticid="Epson-PM_10000" /> - <printer translate="name" name="Epson PM A650" driver="escp2-pma650" manufacturer="Epson" model="74" parameters="standard_params" foomaticid="Epson-PM_A650" /> - <printer translate="name" name="Epson PM A750" driver="escp2-pma750" manufacturer="Epson" model="75" parameters="standard_params" foomaticid="Epson-PM_A750" /> - <printer translate="name" name="Epson PM A820" driver="escp2-pma820" manufacturer="Epson" model="81" parameters="claria_params" foomaticid="Epson-PM_A820" /> - <printer translate="name" name="Epson PM A890" driver="escp2-pma890" manufacturer="Epson" model="76" parameters="standard_params" foomaticid="Epson-PM_A890" /> - <printer translate="name" name="Epson PM A900" driver="escp2-pma900" manufacturer="Epson" model="70" parameters="standard_params" foomaticid="Epson-PM_A900" /> - <printer translate="name" name="Epson PM A940" driver="escp2-pma940" manufacturer="Epson" model="97" parameters="standard_params" foomaticid="Epson-PM_A940" /> - <printer translate="name" name="Epson PM A950" driver="escp2-pma950" manufacturer="Epson" model="70" parameters="standard_params" foomaticid="Epson-PM_A950" /> - <printer translate="name" name="Epson PM D600" driver="escp2-pmd600" manufacturer="Epson" model="77" parameters="standard_params" foomaticid="Epson-PM_D600" /> - <printer translate="name" name="Epson PM D750" driver="escp2-pmd750" manufacturer="Epson" model="63" parameters="standard_params" foomaticid="Epson-PM_D750" /> - <printer translate="name" name="Epson PM D770" driver="escp2-pmd770" manufacturer="Epson" model="84" parameters="standard_params" foomaticid="Epson-PM_D770" /> - <printer translate="name" name="Epson PM D800" driver="escp2-pmd800" manufacturer="Epson" model="84" parameters="standard_params" foomaticid="Epson-PM_D800" /> - <printer translate="name" name="Epson PM D870" driver="escp2-pmd870" manufacturer="Epson" model="81" parameters="claria_params" foomaticid="Epson-PM_D870" /> - <printer translate="name" name="Epson PM D1000" driver="escp2-pmd1000" manufacturer="Epson" model="84" parameters="standard_params" foomaticid="Epson-PM_D1000" /> - <printer translate="name" name="Epson PM G700" driver="escp2-pmg700" manufacturer="Epson" model="84" parameters="standard_params" foomaticid="Epson-PM_G700" /> - <printer translate="name" name="Epson PM G720" driver="escp2-pmg720" manufacturer="Epson" model="84" parameters="standard_params" foomaticid="Epson-PM_G720" /> - <printer translate="name" name="Epson PM G730" driver="escp2-pmg730" manufacturer="Epson" model="84" parameters="standard_params" foomaticid="Epson-PM_G730" /> - <printer translate="name" name="Epson PM G800" driver="escp2-pmg800" manufacturer="Epson" model="68" parameters="standard_params" foomaticid="Epson-PM_G800" /> - <printer translate="name" name="Epson PM G820" driver="escp2-pmg820" manufacturer="Epson" model="68" parameters="standard_params" foomaticid="Epson-PM_G820" /> - <printer translate="name" name="Epson PM G850" driver="escp2-pmg850" manufacturer="Epson" model="81" parameters="claria_params" foomaticid="Epson-PM_G850" /> - <printer translate="name" name="Epson PM T960" driver="escp2-pmt960" manufacturer="Epson" model="97" parameters="standard_params" foomaticid="Epson-PM_T960" /> - <printer translate="name" name="Epson PM G4500" driver="escp2-pmg4500" manufacturer="Epson" model="82" parameters="standard_params" foomaticid="Epson-PM_G4500" /> - <printer translate="name" name="Epson PX A650" driver="escp2-pxa650" manufacturer="Epson" model="95" parameters="cx3500_params" foomaticid="Epson-PX_A650" /> - <printer translate="name" name="Epson Offirio PX B300" driver="escp2-pxb300" manufacturer="Epson" model="87" parameters="standard_params" foomaticid="Epson-Offirio-PX_B300" /> - <printer translate="name" name="Epson Offirio PX B500" driver="escp2-pxb500" manufacturer="Epson" model="87" parameters="standard_params" foomaticid="Epson-Offirio-PX_B500" /> - <printer translate="name" name="Epson PX 7V" driver="escp2-px7v" manufacturer="Epson" model="91" parameters="standard_params" foomaticid="Epson-PX_7V" /> - <printer translate="name" name="Epson PX 101" driver="escp2-px101" manufacturer="Epson" model="85" parameters="standard_params" foomaticid="Epson-PX_101" /> - <printer translate="name" name="Epson PX 201" driver="escp2-px201" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-PX_201" /> - <printer translate="name" name="Epson PX 204" driver="escp2-px204" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-PX_204" /> - <printer translate="name" name="Epson PX 401A" driver="escp2-px401a" manufacturer="Epson" model="94" parameters="standard_params" foomaticid="Epson-PX_401" /> - <printer translate="name" name="Epson PX 504A" driver="escp2-px504a" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-PX_504A" /> - <printer translate="name" name="Epson PX 601F" driver="escp2-px601f" manufacturer="Epson" model="92" parameters="standard_params" foomaticid="Epson-PX_601F" /> - <printer translate="name" name="Epson PX 1001" driver="escp2-px1001" manufacturer="Epson" model="100" parameters="standard_params" foomaticid="Epson-PX_1001" /> - <printer translate="name" name="Epson PX 1200" driver="escp2-px1200" manufacturer="Epson" model="120" parameters="standard_params" foomaticid="Epson-PX_1200">EXPERIMENTAL</printer> - <printer translate="name" name="Epson PX 1600F" driver="escp2-px1600f" manufacturer="Epson" model="120" parameters="standard_params" foomaticid="Epson-PX_1600F">EXPERIMENTAL</printer> - <printer translate="name" name="Epson PX 1700F" driver="escp2-px1700f" manufacturer="Epson" model="120" parameters="standard_params" foomaticid="Epson-PX_1700F">EXPERIMENTAL</printer> - <printer translate="name" name="Epson PX G900" driver="escp2-pxg900" manufacturer="Epson" model="64" parameters="standard_params" foomaticid="Epson-PX_G900" /> - <printer translate="name" name="Epson PX G920" driver="escp2-pxg920" manufacturer="Epson" model="64" parameters="standard_params" foomaticid="Epson-PX_G920" /> - <printer translate="name" name="Epson PX G5000" driver="escp2-pxg5000" manufacturer="Epson" model="67" parameters="standard_params" foomaticid="Epson-PX_G5000" /> - <printer translate="name" name="Epson PX G5300" driver="escp2-pxg5300" manufacturer="Epson" model="91" parameters="standard_params" foomaticid="Epson-PX_G5300" /> - <printer translate="name" name="Epson PX V500" driver="escp2-pxv500" manufacturer="Epson" model="61" parameters="standard_params" foomaticid="Epson-PX_V500" /> - <printer translate="name" name="Epson PX V600" driver="escp2-pxv600" manufacturer="Epson" model="69" parameters="standard_params" foomaticid="Epson-PX_V600" /> - <printer translate="name" name="Epson PX V630" driver="escp2-pxv630" manufacturer="Epson" model="69" parameters="standard_params" foomaticid="Epson-PX_V630" /> - <printer translate="name" name="Epson PX V780" driver="escp2-pxv780" manufacturer="Epson" model="85" parameters="standard_params" foomaticid="Epson-PX_V780" /> - <printer translate="name" name="Epson PX 5500" driver="escp2-px5500" manufacturer="Epson" model="71" parameters="standard_params" foomaticid="Epson-PX_5500" /> - <printer translate="name" name="Epson PX G5600" driver="escp2-pxg5600" manufacturer="Epson" model="98" parameters="standard_params" foomaticid="Epson-PX_G5600" /> - <printer translate="name" name="Epson PX 7000" driver="escp2-px7000" manufacturer="Epson" model="48" parameters="standard_params" foomaticid="Epson-PX_7000" /> - <printer translate="name" name="Epson PX 9000" driver="escp2-px9000" manufacturer="Epson" model="49" parameters="standard_params" foomaticid="Epson-PX_9000" /> + <printer translate="name" name="Epson Stylus TX210" driver="escp2-tx210" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX300F" driver="escp2-tx300f" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX400" driver="escp2-tx400" manufacturer="Epson" model="93" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX410" driver="escp2-tx410" manufacturer="Epson" model="93" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX420" driver="escp2-tx420" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX510FN" driver="escp2-tx510fn" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX550W" driver="escp2-tx550w" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX610FW" driver="escp2-tx610fw" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX615" driver="escp2-tx615" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX630" driver="escp2-tx630" manufacturer="Epson" model="118" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX635" driver="escp2-tx635" manufacturer="Epson" model="118" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX645" driver="escp2-tx645" manufacturer="Epson" model="118" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX650" driver="escp2-tx650" manufacturer="Epson" model="97" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus TX659" driver="escp2-tx659" manufacturer="Epson" model="97" parameters="standard_params" /> + <printer translate="name" name="Epson Stylus XP100" driver="escp2-xp100" manufacturer="Epson" model="123" parameters="standard_params" /> + <printer translate="name" name="Epson SureColor P400" driver="escp2-p400" manufacturer="Epson" model="91" parameters="standard_params" /> + <printer translate="name" name="Epson SureColor P600" driver="escp2-p600" manufacturer="Epson" model="102" parameters="standard_params" /> + <printer translate="name" name="Epson SureColor P800" driver="escp2-p800" manufacturer="Epson" model="102" parameters="standard_params" /> + <printer translate="name" name="Epson SureColor P6000" driver="escp2-p6000" manufacturer="Epson" model="89" parameters="standard_params" /> + <printer translate="name" name="Epson SureColor P7000" driver="escp2-p7000" manufacturer="Epson" model="124" parameters="standard_params" /> + <printer translate="name" name="Epson SureColor P7000 Commercial Edition" driver="escp2-p7000c" manufacturer="Epson" model="126" parameters="standard_params" /> + <printer translate="name" name="Epson SureColor P8000" driver="escp2-p8000" manufacturer="Epson" model="90" parameters="standard_params" /> + <printer translate="name" name="Epson SureColor P9000" driver="escp2-p9000" manufacturer="Epson" model="125" parameters="standard_params" /> + <printer translate="name" name="Epson SureColor P9000 Commercial Edition" driver="escp2-p9000c" manufacturer="Epson" model="127" parameters="standard_params" /> + <printer translate="name" name="Epson SureColor P10000" driver="escp2-p10000" manufacturer="Epson" model="90" parameters="standard_params" /> + <printer translate="name" name="Epson SureColor P20000" driver="escp2-p20000" manufacturer="Epson" model="88" parameters="standard_params" /> + <printer translate="name" name="Epson PictureMate" driver="escp2-picmate" manufacturer="Epson" model="73" parameters="standard_params" /> + <printer translate="name" name="Epson PictureMate Dash" driver="escp2-picmatedash" manufacturer="Epson" model="86" parameters="standard_params" /> + <printer translate="name" name="Epson PictureMate Deluxe" driver="escp2-picmated" manufacturer="Epson" model="73" parameters="standard_params" /> + <printer translate="name" name="Epson PictureMate Flash" driver="escp2-picmateflash" manufacturer="Epson" model="86" parameters="standard_params" /> + <printer translate="name" name="Epson PictureMate Pal" driver="escp2-picmatepal" manufacturer="Epson" model="86" parameters="standard_params" /> + <printer translate="name" name="Epson PictureMate Snap" driver="escp2-picmatesnap" manufacturer="Epson" model="86" parameters="standard_params" /> + <printer translate="name" name="Epson PictureMate 100" driver="escp2-picmate100" manufacturer="Epson" model="86" parameters="standard_params" /> + <printer translate="name" name="Epson PictureMate 200" driver="escp2-picmate200" manufacturer="Epson" model="73" parameters="standard_params" /> + <printer translate="name" name="Epson PictureMate 210" driver="escp2-picmate210" manufacturer="Epson" model="86" parameters="standard_params" /> + <printer translate="name" name="Epson PictureMate 215" driver="escp2-picmate215" manufacturer="Epson" model="86" parameters="standard_params" /> + <printer translate="name" name="Epson PictureMate 240" driver="escp2-picmate240" manufacturer="Epson" model="86" parameters="standard_params" /> + <printer translate="name" name="Epson PictureMate 250" driver="escp2-picmate250" manufacturer="Epson" model="86" parameters="standard_params" /> + <printer translate="name" name="Epson PictureMate 260" driver="escp2-picmate260" manufacturer="Epson" model="86" parameters="standard_params" /> + <printer translate="name" name="Epson PictureMate 270" driver="escp2-picmate270" manufacturer="Epson" model="86" parameters="standard_params" /> + <printer translate="name" name="Epson PictureMate 280" driver="escp2-picmate280" manufacturer="Epson" model="86" parameters="standard_params" /> + <printer translate="name" name="Epson PictureMate 290" driver="escp2-picmate290" manufacturer="Epson" model="86" parameters="standard_params" /> + <printer translate="name" name="Epson PictureMate 500" driver="escp2-picmate500" manufacturer="Epson" model="73" parameters="standard_params" /> + <printer translate="name" name="Epson PictureMate 2005" driver="escp2-picmate2005" manufacturer="Epson" model="73" parameters="standard_params" /> + <printer translate="name" name="Epson WorkForce 30" driver="escp2-wf30" manufacturer="Epson" model="85" parameters="standard_params" /> + <printer translate="name" name="Epson WorkForce 40" driver="escp2-wf40" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson WorkForce 310" driver="escp2-wf310" manufacturer="Epson" model="85" parameters="standard_params" /> + <printer translate="name" name="Epson WorkForce 315" driver="escp2-wf315" manufacturer="Epson" model="85" parameters="standard_params" /> + <printer translate="name" name="Epson WorkForce 500" driver="escp2-wf500" manufacturer="Epson" model="93" parameters="standard_params" /> + <printer translate="name" name="Epson WorkForce 545" driver="escp2-wf545" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson WorkForce 600" driver="escp2-wf600" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson WorkForce 610" driver="escp2-wf610" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson WorkForce 615" driver="escp2-wf615" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson WorkForce 630" driver="escp2-wf630" manufacturer="Epson" model="118" parameters="standard_params" /> + <printer translate="name" name="Epson WorkForce 635" driver="escp2-wf636" manufacturer="Epson" model="118" parameters="standard_params" /> + <printer translate="name" name="Epson WorkForce 645" driver="escp2-wf645" manufacturer="Epson" model="118" parameters="standard_params" /> + <printer translate="name" name="Epson WorkForce 1100" driver="escp2-wf1100" manufacturer="Epson" model="99" parameters="standard_params" /> + <printer translate="name" name="Epson WF-7010 Series" driver="escp2-wf7010" manufacturer="Epson" model="119" parameters="standard_params">EXPERIMENTAL</printer> + <printer translate="name" name="Epson WF-7011 Series" driver="escp2-wf7011" manufacturer="Epson" model="119" parameters="standard_params">EXPERIMENTAL</printer> + <printer translate="name" name="Epson WF-7015 Series" driver="escp2-wf7015" manufacturer="Epson" model="119" parameters="standard_params">EXPERIMENTAL</printer> + <printer translate="name" name="Epson WF-7018 Series" driver="escp2-wf7018" manufacturer="Epson" model="119" parameters="standard_params">EXPERIMENTAL</printer> + <printer translate="name" name="Epson WF-7510 Series" driver="escp2-wf7510" manufacturer="Epson" model="119" parameters="standard_params">EXPERIMENTAL</printer> + <printer translate="name" name="Epson WF-7511 Series" driver="escp2-wf7511" manufacturer="Epson" model="119" parameters="standard_params">EXPERIMENTAL</printer> + <printer translate="name" name="Epson WF-7515 Series" driver="escp2-wf7515" manufacturer="Epson" model="119" parameters="standard_params">EXPERIMENTAL</printer> + <printer translate="name" name="Epson WF-7520 Series" driver="escp2-wf7520" manufacturer="Epson" model="120" parameters="standard_params">EXPERIMENTAL</printer> + <printer translate="name" name="Epson WF-7521 Series" driver="escp2-wf7521" manufacturer="Epson" model="120" parameters="standard_params">EXPERIMENTAL</printer> + <printer translate="name" name="Epson WF-7525 Series" driver="escp2-wf7525" manufacturer="Epson" model="120" parameters="standard_params">EXPERIMENTAL</printer> + <printer translate="name" name="Epson CL 700" driver="escp2-cl700" manufacturer="Epson" model="38" parameters="480_params" /> + <printer translate="name" name="Epson CL 750" driver="escp2-cl750" manufacturer="Epson" model="43" parameters="480_params" /> + <printer translate="name" name="Epson CL 760" driver="escp2-cl760" manufacturer="Epson" model="56" parameters="480_params" /> + <printer translate="name" name="Epson E 100" driver="escp2-e100" manufacturer="Epson" model="73" parameters="standard_params" /> + <printer translate="name" name="Epson E 150" driver="escp2-e150" manufacturer="Epson" model="86" parameters="standard_params" /> + <printer translate="name" name="Epson E 200" driver="escp2-e200" manufacturer="Epson" model="73" parameters="standard_params" /> + <printer translate="name" name="Epson E 300" driver="escp2-e300" manufacturer="Epson" model="86" parameters="standard_params" /> + <printer translate="name" name="Epson E 500" driver="escp2-e500" manufacturer="Epson" model="86" parameters="standard_params" /> + <printer translate="name" name="Epson E 520" driver="escp2-e520" manufacturer="Epson" model="86" parameters="standard_params" /> + <printer translate="name" name="Epson E 700" driver="escp2-e700" manufacturer="Epson" model="86" parameters="standard_params" /> + <printer translate="name" name="Epson E 720" driver="escp2-e720" manufacturer="Epson" model="86" parameters="standard_params" /> + <printer translate="name" name="Epson EM 900C" driver="escp2-em900c" manufacturer="Epson" model="13" parameters="standard_params" /> + <printer translate="name" name="Epson EM 930C" driver="escp2-em930c" manufacturer="Epson" model="34" parameters="standard_params" /> + <printer translate="name" name="Epson EP 302" driver="escp2-ep302" manufacturer="Epson" model="96" parameters="standard_params" /> + <printer translate="name" name="Epson EP 702A" driver="escp2-ep702a" manufacturer="Epson" model="96" parameters="standard_params" /> + <printer translate="name" name="Epson EP 801A" driver="escp2-ep801a" manufacturer="Epson" model="96" parameters="standard_params" /> + <printer translate="name" name="Epson EP 901A" driver="escp2-ep901a" manufacturer="Epson" model="96" parameters="standard_params" /> + <printer translate="name" name="Epson EP 901F" driver="escp2-ep901f" manufacturer="Epson" model="96" parameters="standard_params" /> + <printer translate="name" name="Epson MC 2000" driver="escp2-mc2000" manufacturer="Epson" model="26" parameters="standard_params" /> + <printer translate="name" name="Epson MC 5000" driver="escp2-mc5000" manufacturer="Epson" model="40" parameters="pro_5500_params" /> + <printer translate="name" name="Epson MC 7000" driver="escp2-mc7000" manufacturer="Epson" model="29" parameters="pro_5500_params" /> + <printer translate="name" name="Epson MC 9000" driver="escp2-mc9000" manufacturer="Epson" model="31" parameters="pro_5500_params" /> + <printer translate="name" name="Epson MC 10000" driver="escp2-mc10000" manufacturer="Epson" model="41" parameters="standard_params" /> + <printer translate="name" name="Epson ME 300" driver="escp2-me300" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson ME 320" driver="escp2-me320" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson ME Office 70" driver="escp2-meof70" manufacturer="Epson" model="85" parameters="standard_params" /> + <printer translate="name" name="Epson ME Office 80W" driver="escp2-meof80w" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson ME Office 360" driver="escp2-meof360" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson ME Office 600F" driver="escp2-meof600f" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson ME Office 620F" driver="escp2-meof620f" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson ME Office 700FW" driver="escp2-meof700fw" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson ME Office 940FW" driver="escp2-meof940fw" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson ME Office 1100" driver="escp2-meof1100" manufacturer="Epson" model="99" parameters="standard_params" /> + <printer translate="name" name="Epson MJ 930C" driver="escp2-mj930c" manufacturer="Epson" model="4" parameters="standard_params" /> + <printer translate="name" name="Epson MJ 5100C" driver="escp2-mj5100c" manufacturer="Epson" model="39" parameters="standard_params" /> + <printer translate="name" name="Epson MJ 6000C" driver="escp2-mj6000c" manufacturer="Epson" model="6" parameters="standard_params" /> + <printer translate="name" name="Epson MJ 8000C" driver="escp2-mj8000c" manufacturer="Epson" model="24" parameters="standard_params" /> + <printer translate="name" name="Epson PM 670C" driver="escp2-pm670c" manufacturer="Epson" model="7" parameters="standard_params" /> + <printer translate="name" name="Epson PM 700C" driver="escp2-pm700c" manufacturer="Epson" model="9" parameters="standard_params" /> + <printer translate="name" name="Epson PM 730C" driver="escp2-pm730c" manufacturer="Epson" model="35" parameters="standard_params" /> + <printer translate="name" name="Epson PM 740C" driver="escp2-pm740c" manufacturer="Epson" model="35" parameters="standard_params" /> + <printer translate="name" name="Epson PM 750C" driver="escp2-pm750c" manufacturer="Epson" model="7" parameters="standard_params" /> + <printer translate="name" name="Epson PM 760C" driver="escp2-pm760c" manufacturer="Epson" model="20" parameters="standard_params" /> + <printer translate="name" name="Epson PM 770C" driver="escp2-pm770c" manufacturer="Epson" model="14" parameters="standard_params" /> + <printer translate="name" name="Epson PM 780C" driver="escp2-pm780c" manufacturer="Epson" model="35" parameters="standard_params" /> + <printer translate="name" name="Epson PM 790PT" driver="escp2-pm790pt" manufacturer="Epson" model="36" parameters="standard_params" /> + <printer translate="name" name="Epson PM 800C" driver="escp2-pm800c" manufacturer="Epson" model="22" parameters="standard_params" /> + <printer translate="name" name="Epson PM 850PT" driver="escp2-pm850pt" manufacturer="Epson" model="51" parameters="standard_params" /> + <printer translate="name" name="Epson PM 870C" driver="escp2-pm870c" manufacturer="Epson" model="36" parameters="standard_params" /> + <printer translate="name" name="Epson PM 880C" driver="escp2-pm880c" manufacturer="Epson" model="36" parameters="standard_params" /> + <printer translate="name" name="Epson PM 930C" driver="escp2-pm930c" manufacturer="Epson" model="58" parameters="standard_params" /> + <printer translate="name" name="Epson PM 940C" driver="escp2-pm940c" manufacturer="Epson" model="58" parameters="standard_params" /> + <printer translate="name" name="Epson PM 950C" driver="escp2-pm950c" manufacturer="Epson" model="53" parameters="standard_params" /> + <printer translate="name" name="Epson PM 970C" driver="escp2-pm970c" manufacturer="Epson" model="57" parameters="standard_params" /> + <printer translate="name" name="Epson PM 980C" driver="escp2-pm980c" manufacturer="Epson" model="57" parameters="standard_params" /> + <printer translate="name" name="Epson PM 2000C" driver="escp2-pm2000c" manufacturer="Epson" model="8" parameters="standard_params" /> + <printer translate="name" name="Epson PM 2200C" driver="escp2-pm2200c" manufacturer="Epson" model="54" parameters="standard_params" /> + <printer translate="name" name="Epson PM 3000C" driver="escp2-pm3000c" manufacturer="Epson" model="15" parameters="standard_params" /> + <printer translate="name" name="Epson PM 3300C" driver="escp2-pm3300c" manufacturer="Epson" model="23" parameters="standard_params" /> + <printer translate="name" name="Epson PM 3500C" driver="escp2-pm3500c" manufacturer="Epson" model="37" parameters="standard_params" /> + <printer translate="name" name="Epson PM 3700C" driver="escp2-pm3700c" manufacturer="Epson" model="37" parameters="standard_params" /> + <printer translate="name" name="Epson PM 4000PX" driver="escp2-pm4000px" manufacturer="Epson" model="47" parameters="standard_params" /> + <printer translate="name" name="Epson PM 5000C" driver="escp2-pm5000c" manufacturer="Epson" model="27" parameters="standard_params" /> + <printer translate="name" name="Epson PM 7000C" driver="escp2-pm7000c" manufacturer="Epson" model="28" parameters="standard_params" /> + <printer translate="name" name="Epson PM 9000C" driver="escp2-pm9000c" manufacturer="Epson" model="30" parameters="standard_params" /> + <printer translate="name" name="Epson PM 10000" driver="escp2-pm10000" manufacturer="Epson" model="41" parameters="standard_params" /> + <printer translate="name" name="Epson PM A650" driver="escp2-pma650" manufacturer="Epson" model="74" parameters="standard_params" /> + <printer translate="name" name="Epson PM A750" driver="escp2-pma750" manufacturer="Epson" model="75" parameters="standard_params" /> + <printer translate="name" name="Epson PM A820" driver="escp2-pma820" manufacturer="Epson" model="81" parameters="claria_params" /> + <printer translate="name" name="Epson PM A890" driver="escp2-pma890" manufacturer="Epson" model="76" parameters="standard_params" /> + <printer translate="name" name="Epson PM A900" driver="escp2-pma900" manufacturer="Epson" model="70" parameters="standard_params" /> + <printer translate="name" name="Epson PM A940" driver="escp2-pma940" manufacturer="Epson" model="97" parameters="standard_params" /> + <printer translate="name" name="Epson PM A950" driver="escp2-pma950" manufacturer="Epson" model="70" parameters="standard_params" /> + <printer translate="name" name="Epson PM D600" driver="escp2-pmd600" manufacturer="Epson" model="77" parameters="standard_params" /> + <printer translate="name" name="Epson PM D750" driver="escp2-pmd750" manufacturer="Epson" model="63" parameters="standard_params" /> + <printer translate="name" name="Epson PM D770" driver="escp2-pmd770" manufacturer="Epson" model="84" parameters="standard_params" /> + <printer translate="name" name="Epson PM D800" driver="escp2-pmd800" manufacturer="Epson" model="84" parameters="standard_params" /> + <printer translate="name" name="Epson PM D870" driver="escp2-pmd870" manufacturer="Epson" model="81" parameters="claria_params" /> + <printer translate="name" name="Epson PM D1000" driver="escp2-pmd1000" manufacturer="Epson" model="84" parameters="standard_params" /> + <printer translate="name" name="Epson PM G700" driver="escp2-pmg700" manufacturer="Epson" model="84" parameters="standard_params" /> + <printer translate="name" name="Epson PM G720" driver="escp2-pmg720" manufacturer="Epson" model="84" parameters="standard_params" /> + <printer translate="name" name="Epson PM G730" driver="escp2-pmg730" manufacturer="Epson" model="84" parameters="standard_params" /> + <printer translate="name" name="Epson PM G800" driver="escp2-pmg800" manufacturer="Epson" model="68" parameters="standard_params" /> + <printer translate="name" name="Epson PM G820" driver="escp2-pmg820" manufacturer="Epson" model="68" parameters="standard_params" /> + <printer translate="name" name="Epson PM G850" driver="escp2-pmg850" manufacturer="Epson" model="81" parameters="claria_params" /> + <printer translate="name" name="Epson PM T960" driver="escp2-pmt960" manufacturer="Epson" model="97" parameters="standard_params" /> + <printer translate="name" name="Epson PM G4500" driver="escp2-pmg4500" manufacturer="Epson" model="82" parameters="standard_params" /> + <printer translate="name" name="Epson PX A650" driver="escp2-pxa650" manufacturer="Epson" model="95" parameters="cx3500_params" /> + <printer translate="name" name="Epson Offirio PX B300" driver="escp2-pxb300" manufacturer="Epson" model="87" parameters="standard_params" /> + <printer translate="name" name="Epson Offirio PX B500" driver="escp2-pxb500" manufacturer="Epson" model="87" parameters="standard_params" /> + <printer translate="name" name="Epson PX 7V" driver="escp2-px7v" manufacturer="Epson" model="91" parameters="standard_params" /> + <printer translate="name" name="Epson PX 101" driver="escp2-px101" manufacturer="Epson" model="85" parameters="standard_params" /> + <printer translate="name" name="Epson PX 201" driver="escp2-px201" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson PX 204" driver="escp2-px204" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson PX 401A" driver="escp2-px401a" manufacturer="Epson" model="94" parameters="standard_params" /> + <printer translate="name" name="Epson PX 504A" driver="escp2-px504a" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson PX 601F" driver="escp2-px601f" manufacturer="Epson" model="92" parameters="standard_params" /> + <printer translate="name" name="Epson PX 1001" driver="escp2-px1001" manufacturer="Epson" model="100" parameters="standard_params" /> + <printer translate="name" name="Epson PX 1200" driver="escp2-px1200" manufacturer="Epson" model="120" parameters="standard_params">EXPERIMENTAL</printer> + <printer translate="name" name="Epson PX 1600F" driver="escp2-px1600f" manufacturer="Epson" model="120" parameters="standard_params">EXPERIMENTAL</printer> + <printer translate="name" name="Epson PX 1700F" driver="escp2-px1700f" manufacturer="Epson" model="120" parameters="standard_params">EXPERIMENTAL</printer> + <printer translate="name" name="Epson PX G900" driver="escp2-pxg900" manufacturer="Epson" model="64" parameters="standard_params" /> + <printer translate="name" name="Epson PX G920" driver="escp2-pxg920" manufacturer="Epson" model="64" parameters="standard_params" /> + <printer translate="name" name="Epson PX G5000" driver="escp2-pxg5000" manufacturer="Epson" model="67" parameters="standard_params" /> + <printer translate="name" name="Epson PX G5300" driver="escp2-pxg5300" manufacturer="Epson" model="91" parameters="standard_params" /> + <printer translate="name" name="Epson PX V500" driver="escp2-pxv500" manufacturer="Epson" model="61" parameters="standard_params" /> + <printer translate="name" name="Epson PX V600" driver="escp2-pxv600" manufacturer="Epson" model="69" parameters="standard_params" /> + <printer translate="name" name="Epson PX V630" driver="escp2-pxv630" manufacturer="Epson" model="69" parameters="standard_params" /> + <printer translate="name" name="Epson PX V780" driver="escp2-pxv780" manufacturer="Epson" model="85" parameters="standard_params" /> + <printer translate="name" name="Epson PX 5500" driver="escp2-px5500" manufacturer="Epson" model="71" parameters="standard_params" /> + <printer translate="name" name="Epson PX G5600" driver="escp2-pxg5600" manufacturer="Epson" model="98" parameters="standard_params" /> + <printer translate="name" name="Epson PX 7000" driver="escp2-px7000" manufacturer="Epson" model="48" parameters="standard_params" /> + <printer translate="name" name="Epson PX 9000" driver="escp2-px9000" manufacturer="Epson" model="49" parameters="standard_params" /> + <printer translate="name" name="Epson XP-820" driver="escp2-xp820" manufacturer="Epson" model="91" parameters="standard_params" /> </family> <family name="pcl"> <parameters name="pcl_inkjet_params"> @@ -1848,974 +1879,974 @@ <parameter type="float" name="Gamma">1.000</parameter> <parameter type="float" name="Density">1.000</parameter> </parameters> - <printer translate="name" name="Apollo P-2100" driver="pcl-apollo-p2100" manufacturer="Apollo" model="690" parameters="pcl_inkjet_params" foomaticid="Apollo-P-2100" /> - <printer translate="name" name="Apollo P-2150" driver="pcl-apollo-p2150" manufacturer="Apollo" model="690" parameters="pcl_inkjet_params" foomaticid="Apollo-P-2150" /> - <printer translate="name" name="Apollo P-2200" driver="pcl-apollo-p2200" manufacturer="Apollo" model="690" parameters="pcl_inkjet_params" foomaticid="Apollo-P-2200" /> - <printer translate="name" name="Apollo P-2250" driver="pcl-apollo-p2250" manufacturer="Apollo" model="690" parameters="pcl_inkjet_params" foomaticid="Apollo-P-2250" /> - <printer translate="name" name="Apollo P-2500" driver="pcl-apollo-p2500" manufacturer="Apollo" model="690" parameters="pcl_inkjet_params" foomaticid="Apollo-P-2500" /> - <printer translate="name" name="Apollo P-2550" driver="pcl-apollo-p2550" manufacturer="Apollo" model="690" parameters="pcl_inkjet_params" foomaticid="Apollo-P-2550" /> - <printer translate="name" name="Apollo P-2600" driver="pcl-apollo-p2600" manufacturer="Apollo" model="690" parameters="pcl_inkjet_params" foomaticid="Apollo-P-2600" /> - <printer translate="name" name="Apollo P-2650" driver="pcl-apollo-p2650" manufacturer="Apollo" model="690" parameters="pcl_inkjet_params" foomaticid="Apollo-P-2650" /> - <printer translate="name" name="Apple Color StyleWriter 4100" driver="pcl-apple-4100" manufacturer="Apple" model="601" parameters="pcl_inkjet_params" foomaticid="Apple-Color_StyleWriter_4100" /> <!-- Uses 600 series driver --> - <printer translate="name" name="Apple Color StyleWriter 4500" driver="pcl-apple-4500" manufacturer="Apple" model="690" parameters="pcl_inkjet_params" foomaticid="Apple-Color_StyleWriter_4500" /> <!-- Uses 690 driver --> - <printer translate="name" name="Apple Color StyleWriter 6500" driver="pcl-apple-6500" manufacturer="Apple" model="800" parameters="pcl_inkjet_params" foomaticid="Apple-Color_StyleWriter_6500" /> <!-- Uses 850 driver --> - <printer translate="name" name="Apple LaserWriter Select 360" driver="pcl-apple-lw360" manufacturer="Apple" model="2" parameters="pcl_laser_params" foomaticid="Apple-LaserWriter_Select_360" /> - <printer translate="name" name="Brother DCP-1200" driver="brother-dcp-1200" manufacturer="Brother" model="2" parameters="pcl_laser_params" foomaticid="Brother-DCP-1200" /> - <printer translate="name" name="Brother DCP-8045D" driver="brother-dcp-8045d" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-DCP-8045D" /> - <printer translate="name" name="Brother HL-1040" driver="brother-hl-1040" manufacturer="Brother" model="2" parameters="pcl_laser_params" foomaticid="Brother-HL-1040" /> - <printer translate="name" name="Brother HL-1050" deviceid="MFG:Brother;MDL:HL-1050 series;CMD:PCL5,PJL,PCLXL;" driver="brother-hl-1050" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-1050" /> - <printer translate="name" name="Brother HL-1060" driver="brother-hl-1060" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-1060" /> - <printer translate="name" name="Brother HL-1070" deviceid="MFG:Brother;MDL:HL-1070 series;CMD:PCL5,POSTSCRIPT2,PJL,PCLXL;" driver="brother-hl-1070" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-1070" /> - <printer translate="name" name="Brother HL-10V" driver="brother-hl-10v" manufacturer="Brother" model="3" parameters="pcl_laser_params" foomaticid="Brother-HL-10V" /> - <printer translate="name" name="Brother HL-10h" driver="brother-hl-10h" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-10h" /> - <printer translate="name" name="Brother HL-1240" deviceid="MFG:Brother;MDL:HL-1240 series;CMD:PCL4,PJL;" driver="brother-hl-1240" manufacturer="Brother" model="2" parameters="pcl_laser_params" foomaticid="Brother-HL-1240" /> - <printer translate="name" name="Brother HL-1250" deviceid="MFG:Brother;MDL:HL-1250 series;CMD:PCL5,PJL,PCLXL;" driver="brother-hl-1250" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-1250" /> - <printer translate="name" name="Brother HL-1260" deviceid="MFG:Brother;MDL:HL-1250 series;CMD:PCL5,PJL,PCLXL;" driver="brother-hl-1260" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-1260" /> - <printer translate="name" name="Brother HL-1270N" driver="brother-hl-1270n" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-1270N" /> - <printer translate="name" name="Brother HL-1430" deviceid="MFG:Brother;MDL:HL-1430 series;CMD:PJL;" driver="brother-hl-1430" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-1430" /> - <printer translate="name" name="Brother HL-1440" deviceid="MFG:Brother;MDL:HL-1440 series;CMD:PCL4,PJL;" driver="brother-hl-1440" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-1440" /> - <printer translate="name" name="Brother HL-1450" deviceid="MFG:Brother;MDL:Brother HL-1450 series;" driver="brother-hl-1450" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-1450" /> - <printer translate="name" name="Brother HL-1470N" deviceid="MFG:Brother;MDL:Brother HL-1470N series;" driver="brother-hl-1470n" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-1470N" /> - <printer translate="name" name="Brother HL-1650" driver="brother-hl-1650" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-1650" /> - <printer translate="name" name="Brother HL-1660e" driver="brother-hl-1660e" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-1660e" /> - <printer translate="name" name="Brother HL-1670N" driver="brother-hl-1670n" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-1670N" /> - <printer translate="name" name="Brother HL-1850" driver="brother-hl-1850" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-1850" /> - <printer translate="name" name="Brother HL-1870N" driver="brother-hl-1870n" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-1870N" /> + <printer translate="name" name="Apollo P-2100" driver="pcl-apollo-p2100" manufacturer="Apollo" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="Apollo P-2150" driver="pcl-apollo-p2150" manufacturer="Apollo" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="Apollo P-2200" driver="pcl-apollo-p2200" manufacturer="Apollo" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="Apollo P-2250" driver="pcl-apollo-p2250" manufacturer="Apollo" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="Apollo P-2500" driver="pcl-apollo-p2500" manufacturer="Apollo" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="Apollo P-2550" driver="pcl-apollo-p2550" manufacturer="Apollo" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="Apollo P-2600" driver="pcl-apollo-p2600" manufacturer="Apollo" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="Apollo P-2650" driver="pcl-apollo-p2650" manufacturer="Apollo" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="Apple Color StyleWriter 4100" driver="pcl-apple-4100" manufacturer="Apple" model="601" parameters="pcl_inkjet_params" /> <!-- Uses 600 series driver --> + <printer translate="name" name="Apple Color StyleWriter 4500" driver="pcl-apple-4500" manufacturer="Apple" model="690" parameters="pcl_inkjet_params" /> <!-- Uses 690 driver --> + <printer translate="name" name="Apple Color StyleWriter 6500" driver="pcl-apple-6500" manufacturer="Apple" model="800" parameters="pcl_inkjet_params" /> <!-- Uses 850 driver --> + <printer translate="name" name="Apple LaserWriter Select 360" driver="pcl-apple-lw360" manufacturer="Apple" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother DCP-1200" driver="brother-dcp-1200" manufacturer="Brother" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother DCP-8045D" driver="brother-dcp-8045d" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-1040" driver="brother-hl-1040" manufacturer="Brother" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-1050" deviceid="MFG:Brother;MDL:HL-1050 series;CMD:PCL5,PJL,PCLXL;" driver="brother-hl-1050" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-1060" driver="brother-hl-1060" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-1070" deviceid="MFG:Brother;MDL:HL-1070 series;CMD:PCL5,POSTSCRIPT2,PJL,PCLXL;" driver="brother-hl-1070" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-10V" driver="brother-hl-10v" manufacturer="Brother" model="3" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-10h" driver="brother-hl-10h" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-1240" deviceid="MFG:Brother;MDL:HL-1240 series;CMD:PCL4,PJL;" driver="brother-hl-1240" manufacturer="Brother" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-1250" deviceid="MFG:Brother;MDL:HL-1250 series;CMD:PCL5,PJL,PCLXL;" driver="brother-hl-1250" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-1260" deviceid="MFG:Brother;MDL:HL-1250 series;CMD:PCL5,PJL,PCLXL;" driver="brother-hl-1260" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-1270N" driver="brother-hl-1270n" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-1430" deviceid="MFG:Brother;MDL:HL-1430 series;CMD:PJL;" driver="brother-hl-1430" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-1440" deviceid="MFG:Brother;MDL:HL-1440 series;CMD:PCL4,PJL;" driver="brother-hl-1440" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-1450" deviceid="MFG:Brother;MDL:Brother HL-1450 series;" driver="brother-hl-1450" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-1470N" deviceid="MFG:Brother;MDL:Brother HL-1470N series;" driver="brother-hl-1470n" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-1650" driver="brother-hl-1650" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-1660e" driver="brother-hl-1660e" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-1670N" driver="brother-hl-1670n" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-1850" driver="brother-hl-1850" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-1870N" driver="brother-hl-1870n" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> <!-- Brother HL-2030 series --> - <printer translate="name" name="Brother HL-2030" deviceid="MFG:Brother;MDL:HL-2030 series;CMD:PJL,HBP;" driver="brother-hl-2030" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-2030" /> - <printer translate="name" name="Brother HL-2035" driver="brother-hl-2035" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-2035" /> + <printer translate="name" name="Brother HL-2030" deviceid="MFG:Brother;MDL:HL-2030 series;CMD:PJL,HBP;" driver="brother-hl-2030" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-2035" driver="brother-hl-2035" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> <!-- --> - <printer translate="name" name="Brother HL-2060" driver="brother-hl-2060" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-2060" /> - <printer translate="name" name="Brother HL-2250DN" driver="brother-hl-2250dn" manufacturer="Brother" model="62" parameters="pcl_laser_params" foomaticid="Brother-HL-2250DN" /> - <printer translate="name" name="Brother HL-2460" deviceid="MFG:Brother;MDL:Brother HL-2460 series;" driver="brother-hl-2460" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-2460" /> - <printer translate="name" name="Brother HL-2460N" driver="brother-hl-2460n" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-2460N" /> - <printer translate="name" name="Brother HL-4Ve" driver="brother-hl-4ve" manufacturer="Brother" model="2" parameters="pcl_laser_params" foomaticid="Brother-HL-4Ve" /> - <printer translate="name" name="Brother HL-5030" driver="brother-hl-5030" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-5030" /> - <printer translate="name" name="Brother HL-5040" deviceid="MFG:Brother;MDL:HL-5040 series;CMD:PJL,PCL,PCLXL;" driver="brother-hl-5040" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-5040" /> - <printer translate="name" name="Brother HL-5050" deviceid="MFG:Brother;MDL:Brother HL-5050 series;" driver="brother-hl-5050" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-5050" /> - <printer translate="name" name="Brother HL-5070N" deviceid="MFG:Brother;MDL:Brother HL-5070N series;" driver="brother-hl-5070n" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-5070N" /> - <printer translate="name" name="Brother HL-5140" deviceid="MFG:Brother;MDL:HL-5140 series;CMD:PJL,PCL,PCLXL;" driver="brother-hl-5140" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-5140" /> - <printer translate="name" name="Brother HL-5150D" deviceid="MFG:Brother;MDL:Brother HL-5150D series;CMD:PJL,PCL,PCLXL,POSTSCRIPT;" driver="brother-hl-5150d" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-5150D" /> - <printer translate="name" name="Brother HL-5170DN" deviceid="MFG:Brother;MDL:Brother HL-5170DN series;CMD:PJL,PCL,PCLXL,POSTSCRIPT;" driver="brother-hl-5170dn" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-5170DN" /> - <printer translate="name" name="Brother HL-630" driver="brother-hl-630" manufacturer="Brother" model="2" parameters="pcl_laser_params" foomaticid="Brother-HL-630" /> - <printer translate="name" name="Brother HL-660" driver="brother-hl-660" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-660" /> - <printer translate="name" name="Brother HL-7050" deviceid="MFG:Brother;MDL:Brother HL-7050 series;" driver="brother-hl-7050" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-7050" /> - <printer translate="name" name="Brother HL-7050N" driver="brother-hl-7050n" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-7050N" /> - <printer translate="name" name="Brother HL-760" driver="brother-hl-760" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-760" /> - <printer translate="name" name="Brother HL-960" driver="brother-hl-960" manufacturer="Brother" model="6" parameters="pcl_laser_params" foomaticid="Brother-HL-960" /> - <printer translate="name" name="Brother MFC-6550MC" driver="brother-mfc-6550mc" manufacturer="Brother" model="2" parameters="pcl_laser_params" foomaticid="Brother-MFC-6550MC" /> - <printer translate="name" name="Brother MFC-8300" driver="brother-mfc-8300" manufacturer="Brother" model="3" parameters="pcl_laser_params" foomaticid="Brother-MFC-8300" /> - <printer translate="name" name="Brother MFC-9500" driver="brother-mfc-9500" manufacturer="Brother" model="2" parameters="pcl_laser_params" foomaticid="Brother-MFC-9500" /> - <printer translate="name" name="Brother MFC-9600" driver="brother-mfc-9600" manufacturer="Brother" model="2" parameters="pcl_laser_params" foomaticid="Brother-MFC-9600" /> - <printer translate="name" name="Canon GP 335" driver="canon-gp_335" manufacturer="Canon" model="6" parameters="pcl_laser_params" foomaticid="Canon-GP_335" /> - <printer translate="name" name="Canon LBP-4sx" driver="canon-lbp-4sx" manufacturer="Canon" model="3" parameters="pcl_laser_params" foomaticid="Canon-LBP-4sx" /> - <printer translate="name" name="Canon LBP-430" driver="canon-lbp-430" manufacturer="Canon" model="4" parameters="pcl_laser_params" foomaticid="Canon-LBP-430" /> - <printer translate="name" name="Canon LBP-1000" deviceid="MFG:Canon;MDL:LBP-1000;DES:LBP-1000;CMD:PCL-XL;" driver="canon-lbp-1000" manufacturer="Canon" model="6" parameters="pcl_laser_params" foomaticid="Canon-LBP-1000" /> - <printer translate="name" name="Canon LBP-1260" driver="canon-lbp-1260" manufacturer="Canon" model="6" parameters="pcl_laser_params" foomaticid="Canon-LBP-1260" /> - <printer translate="name" name="Canon LBP-1760" driver="canon-lbp-1760" manufacturer="Canon" model="6" parameters="pcl_laser_params" foomaticid="Canon-LBP-1760" /> - <printer translate="name" name="Canon LBP-3360" driver="canon-lbp-3360" manufacturer="Canon" model="6" parameters="pcl_laser_params" foomaticid="Canon-LBP-3360" /> - <printer translate="name" name="Canon imageRunner 330s" driver="canon-ir_330s" manufacturer="Canon" model="61" parameters="pcl_laser_params" foomaticid="Canon-imageRunner_330s" /> - <printer translate="name" name="Citizen ProJet II" driver="citizen-projet_ii" manufacturer="Citizen" model="2" parameters="pcl_laser_params" foomaticid="Citizen-ProJet_II" /> - <printer translate="name" name="Datamax-ONeil p1115" deviceid="MFG:DatamaxOneil_;MDL:p1115;" color="false" driver="datamax_oneil_p1115" manufacturer="DatamaxONeil" model="10010" parameters="pcl_laser_params" foomaticid="D-O-p1115" /> - <printer translate="name" name="Datamax-ONeil p1115s" deviceid="MFG:DatamaxOneil_;MDL:p1115s;" color="false" driver="datamax_oneil_p1115s" manufacturer="DatamaxONeil" model="10011" parameters="pcl_laser_params" foomaticid="D-O-p1115s" /> - <printer translate="name" name="Datamax-ONeil p1120n" deviceid="MFG:DatamaxOneil_;MDL:p1120n;" color="false" driver="datamax_oneil_p1120n" manufacturer="DatamaxONeil" model="10012" parameters="pcl_laser_params" foomaticid="D-O-p1120n" /> - <printer translate="name" name="Datamax-ONeil p1125" deviceid="MFG:DatamaxOneil_;MDL:p1125;" color="false" driver="datamax_oneil_p1125" manufacturer="DatamaxONeil" model="10013" parameters="pcl_laser_params" foomaticid="D-O-p1125" /> - <printer translate="name" name="Datamax-ONeil p1725" deviceid="MFG:DatamaxOneil_;MDL:p1725;" color="false" driver="datamax_oneil_p1725" manufacturer="DatamaxONeil" model="10014" parameters="pcl_laser_params" foomaticid="D-O-p1725" /> - <printer translate="name" name="Datamax-ONeil w1110" deviceid="MFG:DatamaxOneil_;MDL:w1110;" color="false" driver="datamax_oneil_w1110" manufacturer="DatamaxONeil" model="10015" parameters="pcl_laser_params" foomaticid="D-O-w1110" /> - <printer translate="name" name="Datamax-ONeil H8308p" deviceid="MFG:DatamaxOneil_;MDL:H8308p;" color="false" driver="datamax_oneil_H8308p" manufacturer="DatamaxONeil" model="10016" parameters="pcl_laser_params" foomaticid="D-O-H8308p" /> - <printer translate="name" name="DEC 1800" driver="dec-1800" manufacturer="DEC" model="3" parameters="pcl_laser_params" foomaticid="DEC-1800" /> - <printer translate="name" name="DEC LN17" driver="dec-ln17" manufacturer="DEC" model="6" parameters="pcl_laser_params" foomaticid="DEC-LN17" /> - <printer translate="name" name="Epson ActionLaser 1100" driver="epson-actl_1100" manufacturer="Epson" model="3" parameters="pcl_laser_params" foomaticid="Epson-ActionLaser_1100" /> - <printer translate="name" name="Epson ActionLaser II" driver="epson-actl_ii" manufacturer="Epson" model="2" parameters="pcl_laser_params" foomaticid="Epson-ActionLaser_II" /> - <printer translate="name" name="Epson AL-C2000" driver="epson-acl_c2000" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-AL-C2000" /> - <printer translate="name" name="Epson AL-C2000 PS3" deviceid="MFG:Epson;MDL:AL-C2000 PS3;" driver="epson-acl_c2000ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-AL-C2000_PS3" /> - <printer translate="name" name="Epson AL-C8500" driver="epson-acl_c8500" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-AL-C8500" /> - <printer translate="name" name="Epson AL-C8500PS" driver="epson-acl_c8500ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-AL-C8500PS" /> - <printer translate="name" name="Epson AL-C8600" driver="epson-acl_c8600" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-AL-C8600" /> - <printer translate="name" name="Epson AL-C8600 PS3" deviceid="MFG:Epson;MDL:AL-C8600 PS3;" driver="epson-acl_c8600ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-AL-C8600_PS3" /> - <printer translate="name" name="Epson EPL-5200" driver="epson-epl-5200" manufacturer="Epson" model="3" parameters="pcl_laser_params" foomaticid="Epson-EPL-5200" /> - <printer translate="name" name="Epson EPL-5200+" driver="epson-epl-5200plus" manufacturer="Epson" model="3" parameters="pcl_laser_params" foomaticid="Epson-EPL-5200plus" /> - <printer translate="name" name="Epson EPL-5700" deviceid="MFG:EPSON;MDL:EPL-5700;DES:EPSON EPL-5700;CMD:PJL,EJL,ESCPL2-00,ESCP9-84,PRPXL24-01,HP ENHANCED PCL5,HPGL2-01,;" driver="epson-epl-5700" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-EPL-5700" /> - <printer translate="name" name="Epson EPL-5700PS" driver="epson-epl-5700ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-EPL-5700PS" /> - <printer translate="name" name="Epson EPL-5800" driver="epson-epl-5800" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-EPL-5800" /> - <printer translate="name" name="Epson EPL-5800PS" driver="epson-epl-5800ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-EPL-5800PS" /> - <printer translate="name" name="Epson EPL-5900" driver="epson-epl-5900" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-EPL-5900" /> - <printer translate="name" name="Epson EPL-5900 PS3" deviceid="MFG:Epson;MDL:EPL-5900 PS3;" driver="epson-epl-5900ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-EPL-5900_PS3" /> - <printer translate="name" name="Epson EPL-6100" driver="epson-epl-6100" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-EPL-6100" /> - <printer translate="name" name="Epson EPL-6100 PS3" deviceid="MFG:Epson;MDL:EPL-6100 PS3;" driver="epson-epl-6100ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-EPL-6100_PS3" /> - <printer translate="name" name="Epson EPL-7100" driver="epson-epl-7100" manufacturer="Epson" model="2" parameters="pcl_laser_params" foomaticid="Epson-EPL-7100" /> - <printer translate="name" name="Epson EPL-N2050" driver="epson-epl-n2050" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-EPL-N2050" /> - <printer translate="name" name="Epson EPL-N2050+" driver="epson-epl-n2050plus" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-EPL-N2050plus" /> - <printer translate="name" name="Epson EPL-N2050PS" driver="epson-epl-n2050ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-EPL-N2050PS" /> - <printer translate="name" name="Epson EPL-N2050PS+" driver="epson-epl-n2050psplus" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-EPL-N2050PSplus" /> - <printer translate="name" name="Epson EPL-N2120" driver="epson-epl-n2120" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-EPL-N2120" /> - <printer translate="name" name="Epson EPL-N2500" driver="epson-epl-n2500" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-EPL-N2500" /> - <printer translate="name" name="Epson EPL-N2500 PS3" deviceid="MFG:Epson;MDL:EPL-N2500 PS3;" driver="epson-epl-n2500ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-EPL-N2500_PS3" /> - <printer translate="name" name="Epson EPL-N2750" driver="epson-epl-n2750" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-EPL-N2750" /> - <printer translate="name" name="Epson EPL-N2750PS" driver="epson-epl-n2750ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" foomaticid="Epson-EPL-N2750PS" /> - <printer translate="name" name="Fujitsu PrintPartner 10V" driver="fujitsu-pp_10v" manufacturer="Fujitsu" model="6" parameters="pcl_laser_params" foomaticid="Fujitsu-PrintPartner_10V" /> - <printer translate="name" name="Fujitsu PrintPartner 16DV" driver="fujitsu-pp_16dv" manufacturer="Fujitsu" model="6" parameters="pcl_laser_params" foomaticid="Fujitsu-PrintPartner_16DV" /> - <printer translate="name" name="Fujitsu PrintPartner 20W" driver="fujitsu-pp_20w" manufacturer="Fujitsu" model="6" parameters="pcl_laser_params" foomaticid="Fujitsu-PrintPartner_20W" /> - <printer translate="name" name="Fujitsu PrintPartner 8000" driver="fujitsu-pp_8000" manufacturer="Fujitsu" model="3" parameters="pcl_laser_params" foomaticid="Fujitsu-PrintPartner_8000" /> - <printer translate="name" name="Generic PCL 4 Printer" driver="pcl-g_4" manufacturer="Generic" model="2" parameters="pcl_laser_params" foomaticid="Generic-PCL_4_Printer" /> - <printer translate="name" name="Generic PCL 4 Printer wide margin" driver="pcl-g_4_a4" manufacturer="Generic" model="22" parameters="pcl_laser_params" foomaticid="Generic-PCL_4_Printer_wide_margin" /> - <printer translate="name" name="Generic PCL 4 LF Printer" driver="pcl-g_4_l" manufacturer="Generic" model="23" parameters="pcl_laser_params" foomaticid="Generic-PCL_4_LF_Printer" /> - <printer translate="name" name="Generic PCL 5 Printer" driver="pcl-g_5" manufacturer="Generic" model="3" parameters="pcl_laser_params" foomaticid="Generic-PCL_5_Printer" /> - <printer translate="name" name="Generic PCL 5 Printer wide margin" driver="pcl-g_5_a4" manufacturer="Generic" model="32" parameters="pcl_laser_params" foomaticid="Generic-PCL_5_Printer_wide_margin" /> - <printer translate="name" name="Generic PCL 5 LF Printer" driver="pcl-g_5_l" manufacturer="Generic" model="33" parameters="pcl_laser_params" foomaticid="Generic-PCL_5_LF_Printer" /> - <printer translate="name" name="Generic PCL 5c Printer" driver="pcl-g_5c" manufacturer="Generic" model="6" parameters="pcl_laser_params" foomaticid="Generic-PCL_5c_Printer" /> - <printer translate="name" name="Generic PCL 5c LF Printer" driver="pcl-g_5c_l" manufacturer="Generic" model="61" parameters="pcl_laser_params" foomaticid="Generic-PCL_5c_LF_Printer" /> - <printer translate="name" name="Generic PCL 5e Printer" driver="pcl-g_5e" manufacturer="Generic" model="6" parameters="pcl_laser_params" foomaticid="Generic-PCL_5e_Printer" /> - <printer translate="name" name="Generic PCL 5e LF Printer" driver="pcl-g_5e_l" manufacturer="Generic" model="61" parameters="pcl_laser_params" foomaticid="Generic-PCL_5e_LF_Printer" /> - <printer translate="name" name="Generic PCL 6/PCL XL Printer" driver="pcl-g_6" manufacturer="Generic" model="6" parameters="pcl_laser_params" foomaticid="Generic-PCL_6_PCL_XL_Printer" /> - <printer translate="name" name="Generic PCL 6/PCL XL LF Printer" driver="pcl-g_6_l" manufacturer="Generic" model="61" parameters="pcl_laser_params" foomaticid="Generic-PCL_6_PCL_XL_LF_Printer" /> - <printer translate="name" name="Generic PCL 6 Printer wide margin" driver="pcl-g_6_a4" manufacturer="Generic" model="62" parameters="pcl_laser_params" foomaticid="Generic-PCL_6_Printer_wide_margin" /> - <printer translate="name" name="Generic PCL 6 LF Printer wide margin" driver="pcl-g_6_lf_a4" manufacturer="Generic" model="63" parameters="pcl_laser_params" foomaticid="Generic-PCL_6_LF_Printer_wide_margin" /> - <printer translate="name" name="Generic PCL 6 Tabl Printer wide margin" driver="pcl-g_6_tabloid_a4" manufacturer="Generic" model="64" parameters="pcl_laser_params" foomaticid="Generic-PCL_6_Tabloid_Printer_wide_margin" /> - <printer translate="name" name="Gestetner 10512" driver="gestetner-10512" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-10512" /> - <printer translate="name" name="Gestetner 2212" driver="gestetner-2212" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-2212" /> - <printer translate="name" name="Gestetner 2712" driver="gestetner-2712" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-2712" /> - <printer translate="name" name="Gestetner 3212" driver="gestetner-3212" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-3212" /> - <printer translate="name" name="Gestetner 3502" driver="gestetner-3502" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-3502" /> - <printer translate="name" name="Gestetner 3532/4235g" driver="gestetner-4235g" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-3532_4235g" /> - <printer translate="name" name="Gestetner 4502" driver="gestetner-4502" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-4502" /> - <printer translate="name" name="Gestetner 4532/4245g" driver="gestetner-4245g" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-4532_4245g" /> - <printer translate="name" name="Gestetner 6002" driver="gestetner-6002" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-6002" /> - <printer translate="name" name="Gestetner 7502" driver="gestetner-7502" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-7502" /> - <printer translate="name" name="Gestetner 9002" driver="gestetner-9002" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-9002" /> - <printer translate="name" name="Gestetner DSm415" driver="gestetner-dsm415" manufacturer="Gestetner" model="6" parameters="pcl_laser_params" foomaticid="Gestetner-DSm415" /> - <printer translate="name" name="Gestetner DSm615" driver="gestetner-dsm615" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-DSm615" /> - <printer translate="name" name="Gestetner DSm616" driver="gestetner-dsm616" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-DSm616" /> - <printer translate="name" name="Gestetner DSm618" driver="gestetner-dsm618" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-DSm618" /> - <printer translate="name" name="Gestetner DSm618d" driver="gestetner-dsm618d" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-DSm618d" /> - <printer translate="name" name="Gestetner DSm620" driver="gestetner-dsm620" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-DSm620" /> - <printer translate="name" name="Gestetner DSm620d" driver="gestetner-dsm620d" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-DSm620d" /> - <printer translate="name" name="Gestetner DSm622" driver="gestetner-dsm622" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-DSm622" /> - <printer translate="name" name="Gestetner DSm627" driver="gestetner-dsm627" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-DSm627" /> - <printer translate="name" name="Gestetner DSm635/635G" driver="gestetner-dsm635g" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-DSm635_635G" /> - <printer translate="name" name="Gestetner DSm645/645G" driver="gestetner-ds645g" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-DSm645_645G" /> - <printer translate="name" name="Gestetner DSm651" driver="gestetner-dsm651" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-DSm651" /> - <printer translate="name" name="Gestetner DSm660" driver="gestetner-dsm660" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-DSm660" /> - <printer translate="name" name="Gestetner DSm675" driver="gestetner-dsm675" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-DSm675" /> - <printer translate="name" name="Gestetner DSm725" driver="gestetner-dsm725" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-DSm725" /> - <printer translate="name" name="Gestetner DSm730" driver="gestetner-dsm730" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-DSm730" /> - <printer translate="name" name="Gestetner DSm735/735G" driver="gestetner-dsm735g" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-DSm735_735G" /> - <printer translate="name" name="Gestetner DSm745/745G" driver="gestetner-dsm745g" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-DSm745_745G" /> - <printer translate="name" name="Gestetner MP1100/DSm7110" driver="gestetner-dsm7110" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP1100_DSm7110" /> - <printer translate="name" name="Gestetner MP1350/DSm7135" driver="gestetner-dsm7135" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP1350_DSm7135" /> - <printer translate="name" name="Gestetner MP1600/DSm716" driver="gestetner-dsm716" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP1600_DSm716" /> - <printer translate="name" name="Gestetner MP2000/DSm721d" driver="gestetner-dsm721d" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP2000_DSm721d" /> - <printer translate="name" name="Gestetner MP2500/DSm625" driver="gestetner-dsm625" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP2500_DSm625" /> - <printer translate="name" name="Gestetner MP3500/DSm735e" driver="gestetner-dsm735e" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP3500_DSm735e" /> - <printer translate="name" name="Gestetner MP4500/DSm745e" driver="gestetner-dsm745e" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP4500_DSm745e" /> - <printer translate="name" name="Gestetner MP5500/DSm755" driver="gestetner-dsm755" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP5500_DSm755" /> - <printer translate="name" name="Gestetner MP6500/DSm765" driver="gestetner-dsm765" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP6500_DSm765" /> - <printer translate="name" name="Gestetner MP7500/DSm775" driver="gestetner-dsm775" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP7500_DSm775" /> - <printer translate="name" name="Gestetner MP9000/DSm790" driver="gestetner-dsm790" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP9000_DSm790" /> - <printer translate="name" name="Gestetner MP 161/DSm416" driver="gestetner-dsm416" manufacturer="Gestetner" model="6" parameters="pcl_laser_params" foomaticid="Gestetner-MP_161_DSm416" /> - <printer translate="name" name="Gestetner MP 2510/DSm725e" driver="gestetner-dsm725e" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP_2510_DSm725e" /> - <printer translate="name" name="Gestetner MP 2550" driver="gestetner-mp_2550" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP_2550" /> - <printer translate="name" name="Gestetner MP 2550B" driver="gestetner-mp_2550b" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP_2550B" /> - <printer translate="name" name="Gestetner MP 3010/DSm730e" driver="gestetner-dsm730e" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP_3010_DSm730e" /> - <printer translate="name" name="Gestetner MP 3350" driver="gestetner-mp_3350" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP_3350" /> - <printer translate="name" name="Gestetner MP 3350B" driver="gestetner-mp_3350b" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP_3350B" /> - <printer translate="name" name="Gestetner MP 4000" driver="gestetner-mp_4000" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP_4000" /> - <printer translate="name" name="Gestetner MP 4000B" driver="gestetner-mp_4000b" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP_4000B" /> - <printer translate="name" name="Gestetner MP 5000" driver="gestetner-mp_5000" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP_5000" /> - <printer translate="name" name="Gestetner MP 5000B" driver="gestetner-mp_5000b" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" foomaticid="Gestetner-MP_5000B" /> - <printer translate="name" name="HP Business Inkjet 2200" deviceid="MFG:HEWLETT-PACKARD;MDL:HP BUSINESS INKJET 2200;DES:Hewlett-Packard Business Inkjet 2200;CMD:MLC,PML,PJL;" driver="hp-bij_2200" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-Business_Inkjet_2200" /> - <printer translate="name" name="HP Business Inkjet 2230" deviceid="MFG:HEWLETT-PACKARD;MDL:HP BUSINESS INKJET 2230;DES:Hewlett-Packard Business Inkjet 2230;CMD:MLC,PML,PJL;" driver="hp-bij_2230" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-Business_Inkjet_2230" /> - <printer translate="name" name="HP Business Inkjet 2250" deviceid="MFG:HEWLETT-PACKARD;MDL:HP BUSINESS INKJET 2250;DES:Hewlett-Packard Business Inkjet 2250;CMD:MLC,PML,PJL,PCL5,POSTSCRIPT;" driver="hp-bij_2250" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-Business_Inkjet_2250" /> - <printer translate="name" name="HP Business Inkjet 2250TN" deviceid="MFG:HEWLETT-PACKARD;MDL:HP BUSINESS INKJET 2250;DES:Hewlett-Packard Business Inkjet 2250;CMD:MLC,PML,PJL,PCL5,POSTSCRIPT;" driver="hp-bij_2250tn" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-Business_Inkjet_2250TN" /> - <printer translate="name" name="HP Business Inkjet 2280" deviceid="MFG:HEWLETT-PACKARD;MDL:HP BUSINESS INKJET 2280;DES:Hewlett-Packard Business Inkjet 2280;CMD:MLC,PML,PJL,PCL5,POSTSCRIPT;" driver="hp-bij_2280" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-Business_Inkjet_2280" /> - <printer translate="name" name="HP Color Inkjet Printer CP1160" driver="hp-cij_cp1160" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-Color_Inkjet_Printer_CP1160" /> - <printer translate="name" name="HP Color Inkjet Printer CP1700" deviceid="MFG:HEWLETT-PACKARD;MDL:HP Color Inkjet CP1700;DES:HP Color Inkjet CP1700;" driver="hp-cij_cp1700" manufacturer="HP" model="901" parameters="pcl_inkjet_params" foomaticid="HP-Color_Inkjet_Printer_CP1700" /> - <printer translate="name" name="HP Color LaserJet 2500" deviceid="MFG:Hewlett-Packard;MDL:hp color LaserJet 2500;CMD:PJL,MLC,BIDI-ECP,POSTSCRIPT,PJL,PCLXL,PCL;" driver="hp-clj_2500" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-Color_LaserJet_2500" /> - <printer translate="name" name="HP Color LaserJet 4500" deviceid="MFG:Hewlett-Packard;MDL:LaserJet Color 4500;" driver="hp-clj_4500" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-Color_LaserJet_4500" /> - <printer translate="name" name="HP Color LaserJet 4550" deviceid="MFG:Hewlett-Packard;MDL:HP Color LaserJet 4550 ;DES:Hewlett-Packard Color LaserJet 4550;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL,PJL;" driver="hp-clj_4550" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-Color_LaserJet_4550" /> - <printer translate="name" name="HP Color LaserJet 4600" deviceid="MFG:Hewlett-Packard;MDL:hp color LaserJet 4600;DES:Hewlett-Packard color LaserJet 4600;" driver="hp-clj_4600" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-Color_LaserJet_4600" /> - <printer translate="name" name="HP Color LaserJet 5" driver="hp-clj_5" manufacturer="HP" model="3" parameters="pcl_laser_params" foomaticid="HP-Color_LaserJet_5" /> - <printer translate="name" name="HP Color LaserJet 5000" driver="hp-clj_5000" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-Color_LaserJet_5000" /> - <printer translate="name" name="HP Color LaserJet 5500" driver="hp-clj_5500" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-Color_LaserJet_5500" /> - <printer translate="name" name="HP Color LaserJet 8550GN" driver="hp-clj_8550gn" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-Color_LaserJet_8550GN" /> - <printer translate="name" name="HP DesignJet 230" driver="pcl-desnj-230" manufacturer="HP" model="10230" parameters="pcl_inkjet_params" foomaticid="HP-DesignJet_230" /> - <printer translate="name" name="HP DesignJet 250C" driver="pcl-desnj-250" manufacturer="HP" model="10250" parameters="pcl_inkjet_params" foomaticid="HP-DesignJet_250C" /> - <printer translate="name" name="HP DesignJet 430" driver="pcl-desnj-430" manufacturer="HP" model="10230" parameters="pcl_inkjet_params" foomaticid="HP-DesignJet_430" /> - <printer translate="name" name="HP DesignJet 450C" driver="pcl-desnj-450" manufacturer="HP" model="10250" parameters="pcl_inkjet_params" foomaticid="HP-DesignJet_450C" /> - <printer translate="name" name="HP DesignJet 455CA" driver="pcl-desnj-455" manufacturer="HP" model="10250" parameters="pcl_inkjet_params" foomaticid="HP-DesignJet_455CA" /> - <printer translate="name" name="HP DesignJet 488CA" driver="pcl-desnj-488" manufacturer="HP" model="10250" parameters="pcl_inkjet_params" foomaticid="HP-DesignJet_488CA" /> - <printer translate="name" name="HP DesignJet 700" driver="pcl-desnj-700" manufacturer="HP" model="10700" parameters="pcl_inkjet_params" foomaticid="HP-DesignJet_700" /> - <printer translate="name" name="HP DesignJet 750C Plus" driver="hp-desnj_750c_plus" manufacturer="HP" model="10750" parameters="pcl_inkjet_params" foomaticid="HP-DesignJet_750C_Plus" /> - <printer translate="name" name="HP DesignJet 750C" driver="pcl-750" manufacturer="HP" model="10750" parameters="pcl_inkjet_params" foomaticid="HP-DesignJet_750" /> - <printer translate="name" name="HP DesignJet 2500CP" driver="pcl-desnj-2500" manufacturer="HP" model="12500" parameters="pcl_inkjet_params" foomaticid="HP-DesignJet_2500CP" /> - <printer translate="name" name="HP DesignJet 3500CP" driver="pcl-desnj-3500" manufacturer="HP" model="13500" parameters="pcl_inkjet_params" foomaticid="HP-DesignJet_3500CP" /> - <printer translate="name" name="HP DesignJet ColorPro CAD" driver="hp-desnj_cp_cad" manufacturer="HP" model="2500" parameters="pcl_inkjet_params" foomaticid="HP-DesignJet_ColorPro_CAD" /> - <printer translate="name" name="HP DeskJet 400" deviceid="MFG:Hewlett-Packard;MDL:HP DeskJet 400;DES:HP DeskJet 400 Printer;CMD:PCL,C32;" driver="pcl-400" manufacturer="HP" model="400" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_400" /> - <printer translate="name" name="HP DeskJet 420C" driver="hp-dj_420c" manufacturer="HP" model="540" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_420C" /> - <printer translate="name" name="HP DeskJet 450" deviceid="MFG:hp;MDL:dj450;DES:hp dj450;CMD:MLC,PCL,PML,DESKJET,DW-PCL,DYN;" driver="hp-dj_450" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_450" /> - <printer translate="name" name="HP DeskJet 500" driver="pcl-500" manufacturer="HP" model="500" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_500" /> - <printer translate="name" name="HP DeskJet 500C" driver="pcl-501" manufacturer="HP" model="501" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_500C" /> - <printer translate="name" name="HP DeskJet 505J Plus" driver="hp-dj_505j_plus" manufacturer="HP" model="500" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_505J_Plus" /> - <printer translate="name" name="HP DeskJet 510" driver="hp-dj_510" manufacturer="HP" model="500" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_510" /> - <printer translate="name" name="HP DeskJet 520" driver="pcl-520" manufacturer="HP" model="500" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_520" /> - <printer translate="name" name="HP DeskJet 540C" driver="pcl-540" manufacturer="HP" model="540" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_540C" /> - <printer translate="name" name="HP DeskJet 550C" driver="pcl-550" manufacturer="HP" model="550" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_550C" /> - <printer translate="name" name="HP DeskJet 5550" deviceid="MFG:hp;MDL:deskjet 5550;DES:hp deskjet 5550;CMD:MLC,PCL,PML,DW-PCL,DYN,DESKJET;" driver="hp-dj_5550" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_5550" /> - <printer translate="name" name="HP DeskJet 5551" driver="hp-dj_5551" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_5551" /> - <printer translate="name" name="HP DeskJet 560C" driver="pcl-560" manufacturer="HP" model="550" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_560C" /> - <printer translate="name" name="HP DeskJet 600" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 600;DES:Hewlett-Packard DeskJet 600;CMD:MLC,PCL,PML;" driver="pcl-600" manufacturer="HP" model="600" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_600" /> - <printer translate="name" name="HP DeskJet 600C" driver="pcl-601" manufacturer="HP" model="601" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_600C" /> - <printer translate="name" name="HP DeskJet 610C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 610C;DES:Hewlett-Packard DeskJet 610C;CMD:MLC,PCL,PML;" driver="hp-dj_610c" manufacturer="HP" model="690" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_610C" /> - <printer translate="name" name="HP DeskJet 610CL" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 610C;DES:Hewlett-Packard DeskJet 610C;CMD:MLC,PCL,PML;" driver="hp-dj_610cl" manufacturer="HP" model="690" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_610CL" /> - <printer translate="name" name="HP DeskJet 6122" deviceid="MFG:hp;MDL:deskjet 6122;DES:hp deskjet 6122;CMD:MLC,PCL,PML,DW-PCL,DYN,DESKJET;" driver="hp-dj_6122" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_6122" /> - <printer translate="name" name="HP DeskJet 6127" driver="hp-dj_6127" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_6127" /> - <printer translate="name" name="HP DeskJet 612C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 610C;DES:Hewlett-Packard DeskJet 610C;CMD:MLC,PCL,PML;" driver="hp-dj_612c" manufacturer="HP" model="690" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_612C" /> - <printer translate="name" name="HP DeskJet 640C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 640C;DES:Hewlett-Packard DeskJet 640C;CMD:MLC,PCL,PML;" driver="hp-dj_640c" manufacturer="HP" model="690" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_640C" /> - <printer translate="name" name="HP DeskJet 648C" driver="hp-dj_648c" manufacturer="HP" model="690" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_648C" /> - <printer translate="name" name="HP DeskJet 660C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 660C;DES:Hewlett-Packard DeskJet 660C;CMD:MLC,PCL,PML;" driver="hp-dj_660c" manufacturer="HP" model="601" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_660C" /> - <printer translate="name" name="HP DeskJet 670C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 670C;DES:Hewlett-Packard DeskJet 670C;CMD:MLC,PCL,PML;" driver="hp-dj_670c" manufacturer="HP" model="601" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_670C" /> - <printer translate="name" name="HP DeskJet 670TV" driver="hp-dj_670tv" manufacturer="HP" model="601" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_670TV" /> - <printer translate="name" name="HP DeskJet 672C" driver="hp-dj_672c" manufacturer="HP" model="601" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_672C" /> - <printer translate="name" name="HP DeskJet 680C" driver="hp-dj_680c" manufacturer="HP" model="601" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_680C" /> - <printer translate="name" name="HP DeskJet 682C" driver="hp-dj_682c" manufacturer="HP" model="601" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_682C" /> - <printer translate="name" name="HP DeskJet 690C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 690C;DES:Hewlett-Packard DeskJet 690C;CMD:MLC,PCL,PML;" driver="pcl-690" manufacturer="HP" model="690" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_690C" /> - <printer translate="name" name="HP DeskJet 692C" driver="hp-dj_692c" manufacturer="HP" model="690" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_692C" /> - <printer translate="name" name="HP DeskJet 693C" driver="hp-dj_693c" manufacturer="HP" model="690" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_693C" /> - <printer translate="name" name="HP DeskJet 694C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 690C;DES:Hewlett-Packard DeskJet 690C;CMD:MLC,PCL,PML;" driver="hp-dj_694c" manufacturer="HP" model="690" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_694C" /> - <printer translate="name" name="HP DeskJet 695C" driver="hp-dj_695c" manufacturer="HP" model="690" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_695C" /> - <printer translate="name" name="HP DeskJet 697C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 690C;DES:Hewlett-Packard DeskJet 690C;CMD:MLC,PCL,PML;" driver="hp-dj_697c" manufacturer="HP" model="690" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_697C" /> - <printer translate="name" name="HP DeskJet 810C" driver="pcl-810" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_810C" /> <!-- Uses 840 driver --> - <printer translate="name" name="HP DeskJet 812C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 810C;DES:Hewlett-Packard DeskJet 810C;CMD:MLC,PCL,PML;" driver="pcl-812" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_812C" /> <!-- Uses 840 driver --> - <printer translate="name" name="HP DeskJet 815C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 815C;DES:Hewlett-Packard DeskJet 815C;CMD:MLC,PCL,PML;" driver="hp-dj_815c" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_815C" /> - <printer translate="name" name="HP DeskJet 816C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 815C;DES:Hewlett-Packard DeskJet 815C;CMD:MLC,PCL,PML;" driver="hp-dj_816c" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_816C" /> - <printer translate="name" name="HP DeskJet 825C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 825C;DES:Hewlett-Packard DeskJet 825C;CMD:MLC,PCL,PML;" driver="hp-dj_825c" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_825C" /> - <printer translate="name" name="HP DeskJet 830C" driver="hp-dj_830c" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_830C" /> - <printer translate="name" name="HP DeskJet 832C" driver="hp-dj_832c" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_832C" /> - <printer translate="name" name="HP DeskJet 840C" deviceid="MFG:Hewlett-Packard;MDL:DeskJet 840C;" driver="pcl-840" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_840C" /> <!-- Uses 840 driver --> - <printer translate="name" name="HP DeskJet 841C" deviceid="MFG:Hewlett-Packard;MDL:DeskJet 841C;" driver="hp-dj_841c" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_841C" /> - <printer translate="name" name="HP DeskJet 842C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 840C;DES:Hewlett-Packard DeskJet 840C;CMD:MLC,PCL,PML;" driver="pcl-842" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_842C" /> <!-- Uses 840 driver --> - <printer translate="name" name="HP DeskJet 843C" deviceid="MFG:Hewlett-Packard;MDL:DeskJet 843C;" driver="hp-dj_843c" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_843C" /> - <printer translate="name" name="HP DeskJet 845C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 845C;DES:Hewlett-Packard DeskJet 845C;CMD:MLC,PCL,PML;" driver="pcl-845" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_845C" /> <!-- Uses 840 driver --> - <printer translate="name" name="HP DeskJet 850C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 850C;DES:Hewlett-Packard Deskjet 850C;CMD:PCL,MLC,PML;" driver="pcl-850" manufacturer="HP" model="800" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_850C" /> - <printer translate="name" name="HP DeskJet 855C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 850C;DES:Hewlett-Packard Deskjet 850C;CMD:PCL,MLC,PML;" driver="pcl-855" manufacturer="HP" model="800" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_855C" /> - <printer translate="name" name="HP DeskJet 870C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 870C;DES:Hewlett-Packard Deskjet 870C;CMD:PCL,MLC,PML;" driver="pcl-870" manufacturer="HP" model="800" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_870C" /> - <printer translate="name" name="HP DeskJet 880C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 880C;DES:Hewlett-Packard DeskJet 880C;CMD:MLC,PCL,PML;" driver="hp-dj_880c" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_880C" /> - <printer translate="name" name="HP DeskJet 882C" driver="hp-dj_882c" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_882C" /> - <printer translate="name" name="HP DeskJet 890C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 890C;DES:Hewlett-Packard Deskjet 890C;CMD:PCL,MLC,PML;" driver="pcl-890" manufacturer="HP" model="800" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_890C" /> - <printer translate="name" name="HP DeskJet 895C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 895C;DES:Hewlett-Packard DeskJet 895C;CMD:MLC,PCL,PML;" driver="pcl-895" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_895C" /> <!-- Uses 840 driver --> - <printer translate="name" name="HP DeskJet 916C" driver="pcl-900" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_916C" /> - <printer translate="name" name="HP DeskJet 920C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 920C;DES:Hewlett-Packard DeskJet 920C;CMD:MLC,PCL,PML;" driver="hp-dj_920c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_920C" /> - <printer translate="name" name="HP DeskJet 9300" driver="hp-dj_9300" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_9300" /> - <printer translate="name" name="HP DeskJet 930C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 930C;DES:Hewlett-Packard DeskJet 930C;CMD:MLC,PCL,PML;" driver="hp-dj_930c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_930C" /> - <printer translate="name" name="HP DeskJet 932C" driver="hp-dj_932c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_932C" /> - <printer translate="name" name="HP DeskJet 933C" driver="hp-dj_933c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_933C" /> - <printer translate="name" name="HP DeskJet 934C" driver="hp-dj_934c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_934C" /> - <printer translate="name" name="HP DeskJet 935C" driver="hp-dj_935c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_935C" /> - <printer translate="name" name="HP DeskJet 940C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 940C;DES:Hewlett-Packard DeskJet 940C;CMD:MLC,PCL,PML;" driver="hp-dj_940c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_940C" /> - <printer translate="name" name="HP DeskJet 948C" driver="hp-dj_948c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_948C" /> - <printer translate="name" name="HP DeskJet 950C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 950C;DES:Hewlett-Packard DeskJet 950C;CMD:MLC,PCL,PML;" driver="hp-dj_950c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_950C" /> - <printer translate="name" name="HP DeskJet 952C" driver="hp-dj_952c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_952C" /> - <printer translate="name" name="HP DeskJet 955C" driver="hp-dj_955c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_955C" /> - <printer translate="name" name="HP DeskJet 957C" driver="hp-dj_957c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_957C" /> - <printer translate="name" name="HP DeskJet 959C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 950C;DES:Hewlett-Packard DeskJet 950C;CMD:MLC,PCL,PML;" driver="hp-dj_959c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_959C" /> - <printer translate="name" name="HP DeskJet 960C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 960C;DES:Hewlett-Packard DeskJet 960C;CMD:MLC,PCL,PML;" driver="hp-dj_960c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_960C" /> - <printer translate="name" name="HP DeskJet 970C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 970C;DES:Hewlett-Packard DeskJet 970C;CMD:MLC,PCL,PML;" driver="hp-dj_970c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_970C" /> - <printer translate="name" name="HP DeskJet 975C" driver="hp-dj_975c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_975C" /> - <printer translate="name" name="HP DeskJet 980C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 980C;DES:Hewlett-Packard DeskJet 980C;CMD:MLC,PCL,PML;" driver="hp-dj_980c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_980C" /> - <printer translate="name" name="HP DeskJet 990C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 990C;DES:Hewlett-Packard DeskJet 990C;CMD:MLC,PCL,PML;" driver="hp-dj_990c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_990C" /> - <printer translate="name" name="HP DeskJet 995C" driver="hp-dj_995c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_995C" /> - <printer translate="name" name="HP DeskJet 1100C" driver="pcl-1100" manufacturer="HP" model="1100" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_1100C" /> - <printer translate="name" name="HP DeskJet 1120C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 1120C;DES:Hewlett-Packard Deskjet 1120C;CMD:PCL,MLC,PML;" driver="pcl-1120" manufacturer="HP" model="1100" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_1120C" /> - <printer translate="name" name="HP DeskJet 1125C" driver="hp-dj_1125c" manufacturer="HP" model="1100" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_1125C" /> - <printer translate="name" name="HP DeskJet 1200C" driver="pcl-1200" manufacturer="HP" model="1200" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_1200C" /> - <printer translate="name" name="HP DeskJet 1220C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 1220C;DES:Hewlett-Packard DeskJet 1220;CMD:MLC,PCL,PML;" driver="pcl-1220" manufacturer="HP" model="901" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_1220C" /> <!-- Uses 900 series driver (large) --> - <printer translate="name" name="HP DeskJet 1600C" driver="pcl-1600" manufacturer="HP" model="1600" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_1600C" /> - <printer translate="name" name="HP DeskJet 1600CM" driver="hp-dj_1600cm" manufacturer="HP" model="1600" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_1600CM" /> - <printer translate="name" name="HP DeskJet 2000" driver="pcl-2000" manufacturer="HP" model="2000" parameters="pcl_inkjet_params" foomaticid="HP-2000C" /> - <printer translate="name" name="HP DeskJet 2500" driver="pcl-2500" manufacturer="HP" model="2500" parameters="pcl_inkjet_params" foomaticid="HP-2500C" /> - <printer translate="name" name="HP DeskJet 2500CM" driver="hp-2500cm" manufacturer="HP" model="2500" parameters="pcl_inkjet_params" foomaticid="HP-2500CM" /> - <printer translate="name" name="HP DeskJet 340C" deviceid="MFG:Hewlett-Packard;MDL:HP DeskJet 340;DES:HP;CMD:PCL,C32;" driver="pcl-340" manufacturer="HP" model="340" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_340C" /> - <printer translate="name" name="HP DeskJet 3810" driver="hp-dj_3810" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_3810" /> - <printer translate="name" name="HP DeskJet 3816" driver="hp-dj_3816" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_3816" /> - <printer translate="name" name="HP DeskJet 3820" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 3820;DES:Hewlett-Packard DeskJet 3820;CMD:MLC,PCL,PML;" driver="hp-dj_3820" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_3820" /> - <printer translate="name" name="HP DeskJet 3822" driver="hp-dj_3822" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-DeskJet_3822" /> - <printer translate="name" name="HP LaserJet 2" driver="pcl-2" manufacturer="HP" model="2" parameters="pcl_laser_params" foomaticid="HP-LaserJet_2" /> - <printer translate="name" name="HP LaserJet 2D" driver="hp-lj_2d" manufacturer="HP" model="2" parameters="pcl_laser_params" foomaticid="HP-LaserJet_2D" /> - <printer translate="name" name="HP LaserJet 2P Plus" driver="hp-lj_2p_plus" manufacturer="HP" model="21" parameters="pcl_laser_params" foomaticid="HP-LaserJet_2P_Plus" /> - <printer translate="name" name="HP LaserJet 2P" driver="pcl-2p" manufacturer="HP" model="21" parameters="pcl_laser_params" foomaticid="HP-LaserJet_2P" /> - <printer translate="name" name="HP LaserJet 3" driver="pcl-3" manufacturer="HP" model="3" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3" /> - <printer translate="name" name="HP LaserJet 3D" driver="hp-lj_3d" manufacturer="HP" model="3" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3D" /> - <printer translate="name" name="HP LaserJet 3P w/ PCL5" driver="hp-lj_3p_w_pcl5" manufacturer="HP" model="4" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3P_w_PCL5" /> - <printer translate="name" name="HP LaserJet 3P w/PS" driver="hp-lj_3p_w_ps" manufacturer="HP" model="3" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3P_w_PS" /> - <printer translate="name" name="HP LaserJet 4 Plus" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 4 Plus;CMD:PJL,PCL,POSTSCRIPT;" driver="hp-lj_4_plus" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_4_Plus" /> - <printer translate="name" name="HP LaserJet 4" driver="pcl-4" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_4" /> - <printer translate="name" name="HP LaserJet 4L" deviceid="MFG:Hewlett-Packard;MDL:LaserJet 4L;CMD:HP ENHANCED PCL5,PJL;" driver="pcl-4l" manufacturer="HP" model="4" parameters="pcl_laser_params" foomaticid="HP-LaserJet_4L" /> - <printer translate="name" name="HP LaserJet 4M" driver="hp-lj_4m" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_4M" /> - <printer translate="name" name="HP LaserJet 4ML" driver="hp-lj_4ml" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_4ML" /> - <printer translate="name" name="HP LaserJet 4P" driver="hp-lj_4p" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_4P" /> - <printer translate="name" name="HP LaserJet 4Si" driver="pcl-4si" manufacturer="HP" model="51" parameters="pcl_laser_params" foomaticid="HP-LaserJet_4Si" /> - <printer translate="name" name="HP LaserJet 4V" driver="pcl-4v" manufacturer="HP" model="5" parameters="pcl_laser_params" foomaticid="HP-LaserJet_4V" /> - <printer translate="name" name="HP LaserJet 5" driver="pcl-5" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_5" /> - <printer translate="name" name="HP LaserJet 5L" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 5L;DES:Hewlett-Packard LaserJet 5L Printer;CMD:HP ENHANCED PCL5,PJL;" driver="hp-lj_5l" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_5L" /> - <printer translate="name" name="HP LaserJet 5M" driver="hp-lj_5m" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_5M" /> - <printer translate="name" name="HP LaserJet 5MP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 5MP;DES:Hewlett-Packard LaserJet 5MP Printer;CMD:HP ENHANCED PCL5,PJL,POSTSCRIPT;" driver="hp-lj_5mp" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_5MP" /> - <printer translate="name" name="HP LaserJet 5P" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 5P;DES:Hewlett-Packard LaserJet 5P Printer;CMD:HP ENHANCED PCL5,PJL;" driver="hp-lj_5p" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_5P" /> - <printer translate="name" name="HP LaserJet 5Si" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 5Si;DES:None;CMD:PJL,MLC,PCL,POSTSCRIPT;" driver="pcl-5si" manufacturer="HP" model="7" parameters="pcl_laser_params" foomaticid="HP-LaserJet_5Si" /> - <printer translate="name" name="HP LaserJet 6" driver="pcl-6" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_6" /> - <printer translate="name" name="HP LaserJet 6L" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 6L;DES:Hewlett-Packard LaserJet 6L Printer;" driver="hp-lj_6l" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_6L" /> - <printer translate="name" name="HP LaserJet 6MP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 6MP;DES:Hewlett-Packard LaserJet 6MP Printer;CMD:PJL,MLC,PCLXL,PCL,POSTSCRIPT;" driver="hp-lj_6mp" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_6MP" /> - <printer translate="name" name="HP LaserJet 6P" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 6P;DES:Hewlett-Packard LaserJet 6P Printer;CMD:HP ENHANCED PCL5,PJL;" driver="hp-lj_6p" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_6P" /> - <printer translate="name" name="HP LaserJet 1010" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 1010;CMD:FastRaster;" driver="hp-lj_1010" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_1010" /> - <printer translate="name" name="HP LaserJet 1012" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 1012;CMD:FastRaster;" driver="hp-lj_1012" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_1012" /> - <printer translate="name" name="HP LaserJet 1015" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 1015;CMD:FastRaster;" driver="hp-lj_1015" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_1015" /> - <printer translate="name" name="HP LaserJet 1022" driver="hp-lj_1022" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_1022" /> - <printer translate="name" name="HP LaserJet 1100" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 1100;DES:HP LaserJet 1100 Printer;CMD:MLC,PCL,PJL;" driver="hp-lj_1100" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_1100" /> - <printer translate="name" name="HP LaserJet 1100A" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 1100;DES:HP LaserJet 1100A Printer-Copier-Scanner;CMD:MLC,MFPDTF1,PCL,PJL;" driver="hp-lj_1100a" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_1100A" /> - <printer translate="name" name="HP LaserJet 1150" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 1150;DES:Hewlett-Packard LaserJet 1150;CMD:PJL,MLC,BIDI-ECP,PCL,DW-PCL;" driver="hp-lj_1150" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_1150" /> - <printer translate="name" name="HP LaserJet 1160" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 1160 series;DES:Hewlett-Packard LaserJet 1160 series;CMD:PJL,MLC,BIDI-ECP,PCL,DW-PCL;" driver="hp-lj_1160" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_1160" /> - <printer translate="name" name="HP LaserJet 1200" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 1200;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_1200" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_1200" /> - <printer translate="name" name="HP LaserJet 1220" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 1220;DES:Hewlett-Packard LaserJet 1220;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_1220" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_1220" /> - <printer translate="name" name="HP LaserJet 1300" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 1300;DES:Hewlett-Packard LaserJet 1300;CMD:PJL,MLC,BIDI-ECP,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_1300" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_1300" /> - <printer translate="name" name="HP LaserJet 1320" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 1320 series;DES:Hewlett-Packard LaserJet 1320 series;CMD:PJL,MLC,BIDI-ECP,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_1320" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_1320" /> - <printer translate="name" name="HP LaserJet 2100" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 2100 Series;DES:Hewlett-Packard LaserJet 2100 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_2100" manufacturer="HP" model="62" parameters="pcl_laser_params" foomaticid="HP-LaserJet_2100" /> - <printer translate="name" name="HP LaserJet 2100M" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 2100 Series;DES:Hewlett-Packard LaserJet 2100 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_2100m" manufacturer="HP" model="62" parameters="pcl_laser_params" foomaticid="HP-LaserJet_2100M" /> - <printer translate="name" name="HP LaserJet 2200" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 2200;DES:Hewlett-Packard LaserJet 2200;" driver="hp-lj_2200" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_2200" /> - <printer translate="name" name="HP LaserJet 2300" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 2300 series;DES:Hewlett-Packard LaserJet 2300 series;CMD:PJL,MLC,BIDI-ECP,PCLXL,PCL,PJL,POSTSCRIPT;" driver="hp-lj_2300" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_2300" /> - <printer translate="name" name="HP LaserJet 2410" driver="hp-lj_2410" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_2410" /> - <printer translate="name" name="HP LaserJet 2420" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 2420;DES:Hewlett-Packard LaserJet 2420;CMD:PJL,MLC,PCLXL,PCL,PJL,POSTSCRIPT;" driver="hp-lj_2420" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_2420" /> - <printer translate="name" name="HP LaserJet 2430" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 2430;DES:Hewlett-Packard LaserJet 2430;CMD:PJL,MLC,PCLXL,PCL,PJL,POSTSCRIPT,PDF;" driver="hp-lj_2430" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_2430" /> - <printer translate="name" name="HP LaserJet 3015" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3015;DES:Hewlett-Packard LaserJet 3015;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3015" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3015" /> - <printer translate="name" name="HP LaserJet 3020" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 3020;DES:Hewlett-Packard LaserJet 3020;CMD:PJL,MLC,BIDI-ECP,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3020" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3020" /> - <printer translate="name" name="HP LaserJet 3030" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3030;DES:Hewlett-Packard LaserJet 3030;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3030" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3030" /> - <printer translate="name" name="HP LaserJet 3050" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3050;DES:Hewlett-Packard LaserJet 3050;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3050" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3050" /> - <printer translate="name" name="HP LaserJet 3052" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3052;DES:Hewlett-Packard LaserJet 3052;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3052" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3052" /> - <printer translate="name" name="HP LaserJet 3055" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3055;DES:Hewlett-Packard LaserJet 3055;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3055" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3055" /> - <printer translate="name" name="HP LaserJet 3200" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3200;DES:Hewlett-Packard LaserJet 3200;CMD:PJL,MLC,PCL,PCLXL;" driver="hp-lj_3200" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3200" /> - <printer translate="name" name="HP LaserJet 3200m" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3200M;DES:Hewlett-Packard LaserJet 3200M;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_3200m" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3200m" /> - <printer translate="name" name="HP LaserJet 3200se" driver="hp-lj_3200se" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3200se" /> - <printer translate="name" name="HP LaserJet 3300 MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3300/3310/3320;DES:Hewlett-Packard LaserJet 3300/3310/3320;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3300_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3300_MFP" /> - <printer translate="name" name="HP LaserJet 3310 MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3300/3310/3320;DES:Hewlett-Packard LaserJet 3300/3310/3320;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3310_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3310_MFP" /> - <printer translate="name" name="HP LaserJet 3320 MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3300/3310/3320;DES:Hewlett-Packard LaserJet 3300/3310/3320;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3320_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3320_MFP" /> - <printer translate="name" name="HP LaserJet 3320N MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3300/3310/3320;DES:Hewlett-Packard LaserJet 3300/3310/3320;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3320n_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3320N_MFP" /> - <printer translate="name" name="HP LaserJet 3330 MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3330;DES:Hewlett-Packard LaserJet 3330;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3330_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3330_MFP" /> - <printer translate="name" name="HP LaserJet 3380" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3380;DES:Hewlett-Packard LaserJet 3380;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3380" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3380" /> - <printer translate="name" name="HP LaserJet 3390" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3390;DES:Hewlett-Packard LaserJet 3390;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3390" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3390" /> - <printer translate="name" name="HP LaserJet 3392" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3390;DES:Hewlett-Packard LaserJet 3390;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3392" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_3392" /> - <printer translate="name" name="HP LaserJet 4000" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 4000 Series;DES:Hewlett-Packard LaserJet 4000 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_4000" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_4000" /> - <printer translate="name" name="HP LaserJet 4050" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 4050 Series ;DES:Hewlett-Packard LaserJet 4050 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_4050" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_4050" /> - <printer translate="name" name="HP LaserJet 4100" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 4100 Series ;DES:Hewlett-Packard LaserJet 4100 Series;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL,PJL;" driver="hp-lj_4100" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_4100" /> - <printer translate="name" name="HP LaserJet 4200" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 4200;DES:Hewlett-Packard LaserJet 4200;CMD:PJL,MLC,POSTSCRIPT,PJL,PCLXL,PCL;" driver="hp-lj_4200" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_4200" /> - <printer translate="name" name="HP LaserJet 4240" driver="hp-lj_4240" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_4240" /> - <printer translate="name" name="HP LaserJet 4250" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 4250;DES:Hewlett-Packard LaserJet 4250;CMD:PJL,MLC,PCLXL,PCL,PJL,POSTSCRIPT;" driver="hp-lj_4250" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_4250" /> - <printer translate="name" name="HP LaserJet 4300" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 4300;CMD:PJL,MLC,POSTSCRIPT,PJL,PCLXL,PCL;" driver="hp-lj_4300" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_4300" /> - <printer translate="name" name="HP LaserJet 4345 mfp" driver="hp-lj_4345_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_4345_mfp" /> - <printer translate="name" name="HP LaserJet 4350" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 4350;CMD:PJL,MLC,PCLXL,PCL,PJL,POSTSCRIPT,PDF;" driver="hp-lj_4350" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_4350" /> - <printer translate="name" name="HP LaserJet 5000" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 5000 Series;DES:Hewlett-Packard LaserJet 5000 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_5000" manufacturer="HP" model="63" parameters="pcl_laser_params" foomaticid="HP-LaserJet_5000" /> - <printer translate="name" name="HP LaserJet 5100" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 5100 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_5100" manufacturer="HP" model="63" parameters="pcl_laser_params" foomaticid="HP-LaserJet_5100" /> - <printer translate="name" name="HP LaserJet 5200" driver="hp-lj_5200" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_5200" /> - <printer translate="name" name="HP LaserJet 5200L" driver="hp-lj_5200l" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_5200L" /> - <printer translate="name" name="HP LaserJet 8000" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 8000 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_8000" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_8000" /> - <printer translate="name" name="HP LaserJet 8100" driver="hp-lj_8100" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_8100" /> - <printer translate="name" name="HP LaserJet 8150" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 8150 Series;DES:Hewlett-Packard LaserJet 8150 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_8150" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_8150" /> - <printer translate="name" name="HP LaserJet 9000" driver="hp-lj_9000" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_9000" /> - <printer translate="name" name="HP LaserJet 9040" driver="hp-lj_9040" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_9040" /> - <printer translate="name" name="HP LaserJet 9040 MFP" driver="hp-lj_9040_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_9040_MFP" /> - <printer translate="name" name="HP LaserJet 9050" driver="hp-lj_9050" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_9050" /> - <printer translate="name" name="HP LaserJet 9050 MFP" driver="hp-lj_9050_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_9050_MFP" /> - <printer translate="name" name="HP LaserJet M3027 MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet M3027 MFP;DES:Hewlett-Packard LaserJet 8150 Series;CMD:PJL,MLC,BIDI-ECP,PCLXL,PCL,PDF,PJL,POSTSCRIPT;" driver="hp-lj_m3027_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_M3027_MFP" /> - <printer translate="name" name="HP LaserJet M3035 MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet M3035 MFP;DES:Hewlett-Packard LaserJet 8150 Series;CMD:PJL,MLC,BIDI-ECP,PJL,PCLXL,PCL,PDF,POSTSCRIPT;" driver="hp-lj_m3035_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_M3035_MFP" /> - <printer translate="name" name="HP LaserJet M4345 MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 8150 Series;DES:Hewlett-Packard LaserJet 8150 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_m4345_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_M4345_MFP" /> - <printer translate="name" name="HP LaserJet M5025 MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 8150 Series;DES:Hewlett-Packard LaserJet 8150 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_m5025_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_M5025_MFP" /> - <printer translate="name" name="HP LaserJet M5035 MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 8150 Series;DES:Hewlett-Packard LaserJet 8150 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_m5035_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_M5035_MFP" /> - <printer translate="name" name="HP LaserJet P2010" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet P2010 series;DES:Hewlett-Packard LaserJet P2010 series;CMD:PJL,MLC,BIDI-ECP,PCL,DW-PCL;" driver="hp-lj_p2010" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_P2010" /> - <printer translate="name" name="HP LaserJet P2015" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet P2015 Series;DES:Hewlett-Packard LaserJet P2015 series;CMD:PJL,MLC,BIDI-ECP,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_p2015" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_P2015" /> - <printer translate="name" name="HP LaserJet P3004" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet P3004 Series;DES:Hewlett-Packard LaserJet P3004 Series;CMD:PJL,MLC,BIDI-ECP,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_p3004" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_P3004" /> - <printer translate="name" name="HP LaserJet P3005" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet P3005;DES:Hewlett-Packard LaserJet P3005 Series;CMD:PJL,MLC,BIDI-ECP,POSTSCRIPT,PJL,PCLXL,PCL;" driver="hp-lj_p3005" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-LaserJet_P3005" /> - <printer translate="name" name="HP Mopier 240" driver="hp-mopier_240" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-Mopier_240" /> - <printer translate="name" name="HP Mopier 320" driver="hp-mopier_320" manufacturer="HP" model="6" parameters="pcl_laser_params" foomaticid="HP-Mopier_320" /> - <printer translate="name" name="HP OfficeJet 300" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 300;DES:Hewlett-Packard OfficeJet Series 300;CMD:MLC,PCL,PML;" driver="hp-oj_300" manufacturer="HP" model="500" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_300" /> - <printer translate="name" name="HP OfficeJet 330" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 300;DES:Hewlett-Packard OfficeJet Series 300;CMD:MLC,PCL,PML;" driver="hp-oj_330" manufacturer="HP" model="500" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_330" /> - <printer translate="name" name="HP OfficeJet 350" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 300;DES:Hewlett-Packard OfficeJet Series 300;CMD:MLC,PCL,PML;" driver="hp-oj_350" manufacturer="HP" model="500" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_350" /> - <printer translate="name" name="HP OfficeJet 500" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 500;CMD:MLC,PCL,PML;" driver="hp-oj_500" manufacturer="HP" model="601" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_500" /> - <printer translate="name" name="HP OfficeJet 520" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 500;CMD:MLC,PCL,PML;" driver="hp-oj_520" manufacturer="HP" model="601" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_520" /> - <printer translate="name" name="HP OfficeJet 570" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 500;CMD:MLC,PCL,PML;" driver="hp-oj_570" manufacturer="HP" model="601" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_570" /> - <printer translate="name" name="HP OfficeJet 580" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 500;CMD:MLC,PCL,PML;" driver="hp-oj_580" manufacturer="HP" model="601" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_580" /> - <printer translate="name" name="HP OfficeJet 590" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 500;CMD:MLC,PCL,PML;" driver="hp-oj_590" manufacturer="HP" model="601" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_590" /> - <printer translate="name" name="HP OfficeJet 600" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 600;CMD:MLC,PCL,PML;" driver="hp-oj_600" manufacturer="HP" model="601" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_600" /> - <printer translate="name" name="HP OfficeJet 610" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 600;CMD:MLC,PCL,PML;" driver="hp-oj_610" manufacturer="HP" model="601" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_610" /> - <printer translate="name" name="HP OfficeJet 625" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 600;CMD:MLC,PCL,PML;" driver="hp-oj_625" manufacturer="HP" model="601" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_625" /> - <printer translate="name" name="HP OfficeJet 630" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 600;CMD:MLC,PCL,PML;" driver="hp-oj_630" manufacturer="HP" model="601" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_630" /> - <printer translate="name" name="HP OfficeJet 635" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 600;CMD:MLC,PCL,PML;" driver="hp-oj_635" manufacturer="HP" model="601" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_635" /> - <printer translate="name" name="HP OfficeJet 700" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 700;CMD:MLC,PCL,PML;" driver="hp-oj_700" manufacturer="HP" model="690" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_700" /> - <printer translate="name" name="HP OfficeJet 710" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 700;CMD:MLC,PCL,PML;" driver="hp-oj_710" manufacturer="HP" model="690" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_710" /> - <printer translate="name" name="HP OfficeJet 720" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 700;CMD:MLC,PCL,PML;" driver="hp-oj_720" manufacturer="HP" model="690" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_720" /> - <printer translate="name" name="HP OfficeJet 725" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 700;CMD:MLC,PCL,PML;" driver="hp-oj_725" manufacturer="HP" model="690" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_725" /> - <printer translate="name" name="HP OfficeJet 5105" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet 5105;DES:Hewlett-Packard OfficeJet 5100 Series;CMD:MLC,PCL,PML;" driver="hp-oj_5105" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_5105" /> - <printer translate="name" name="HP OfficeJet 5110" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet 5110v;DES:Hewlett-Packard OfficeJet 5100 Series;CMD:MLC,PCL,PML;" driver="hp-oj_5110" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_5110" /> - <printer translate="name" name="HP OfficeJet 5110xi" driver="hp-oj_5110xi" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_5110xi" /> - <printer translate="name" name="HP OfficeJet 6105" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet 6100 Series;CMD:MLC,PCL,PML,DW-PCL,DYN;" driver="hp-oj_6105" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_6105" /> - <printer translate="name" name="HP OfficeJet 6110" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet 6100 Series;CMD:MLC,PCL,PML,DW-PCL,DYN;" driver="hp-oj_6110" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_6110" /> - <printer translate="name" name="HP OfficeJet 7110" deviceid="MFG:Hewlett-Packard;MDL:officejet 7100 series;CMD:MLC,PCL,PML,DW-PCL,BIDI-ECP;" driver="hp-oj_7110" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_7110" /> - <printer translate="name" name="HP OfficeJet 7130" deviceid="MFG:Hewlett-Packard;MDL:officejet 7100 series;CMD:MLC,PCL,PML,DW-PCL,BIDI-ECP;" driver="hp-oj_7130" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_7130" /> - <printer translate="name" name="HP OfficeJet 7140" deviceid="MFG:Hewlett-Packard;MDL:officejet 7100 series;CMD:MLC,PCL,PML,DW-PCL,BIDI-ECP;" driver="hp-oj_7140" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_7140" /> - <printer translate="name" name="HP OfficeJet D125" deviceid="MFG:Hewlett-Packard;MDL:officejet d series;CMD:MLC,PCL,PML,DW-PCL,BIDI-ECP;" driver="hp-oj_d125" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_D125" /> - <printer translate="name" name="HP OfficeJet D135" deviceid="MFG:Hewlett-Packard;MDL:officejet d series;CMD:MLC,PCL,PML,DW-PCL,BIDI-ECP;" driver="hp-oj_d135" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_D135" /> - <printer translate="name" name="HP OfficeJet D145" deviceid="MFG:Hewlett-Packard;MDL:officejet d series;CMD:MLC,PCL,PML,DW-PCL,BIDI-ECP;" driver="hp-oj_d145" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_D145" /> - <printer translate="name" name="HP OfficeJet D155" deviceid="MFG:Hewlett-Packard;MDL:officejet d series;CMD:MLC,PCL,PML,DW-PCL,BIDI-ECP;" driver="hp-oj_d155" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_D155" /> - <printer translate="name" name="HP OfficeJet G55" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet G55;DES:Hewlett-Packard OfficeJet G Series;CMD:MLC,PCL,PML,SCL;" driver="hp-oj_g55" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_G55" /> - <printer translate="name" name="HP OfficeJet G85" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet G85;DES:Hewlett-Packard OfficeJet G Series;CMD:MLC,PCL,PML,SCL;" driver="hp-oj_g85" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_G85" /> - <printer translate="name" name="HP OfficeJet G95" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet G95;DES:Hewlett-Packard OfficeJet G Series;CMD:MLC,PCL,PML,SCL;" driver="hp-oj_g95" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_G95" /> - <printer translate="name" name="HP OfficeJet K60" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet K60;DES:Hewlett-Packard OfficeJet K Series;CMD:MLC,PCL,PML;" driver="hp-oj_k60" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_K60" /> - <printer translate="name" name="HP OfficeJet K60xi" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet K60xi;DES:Hewlett-Packard OfficeJet K Series;CMD:MLC,PCL,PML;" driver="hp-oj_k60xi" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_K60xi" /> - <printer translate="name" name="HP OfficeJet K80" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet K80;DES:Hewlett-Packard OfficeJet K Series;CMD:MLC,PCL,PML;" driver="hp-oj_k80" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_K80" /> - <printer translate="name" name="HP OfficeJet K80xi" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet K80xi;DES:Hewlett-Packard OfficeJet K Series;CMD:MLC,PCL,PML;" driver="hp-oj_k80xi" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_K80xi" /> - <printer translate="name" name="HP OfficeJet LX" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet;CMD:MLC,PCL,PML;" driver="hp-oj_lx" manufacturer="HP" model="500" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_LX" /> - <printer translate="name" name="HP OfficeJet Pro 1150C" deviceid="MFG:HEWLETT-PACKARD;MDL:OFFICEJET PRO 1150C;DES:Hewlett-Packard OfficeJet Pro 1150C;CMD:PCL,MLC,PML,PJL;" driver="hp-oj_pro_1150c" manufacturer="HP" model="800" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_Pro_1150C" /> - <printer translate="name" name="HP OfficeJet Pro 1170C" deviceid="MFG:HEWLETT-PACKARD;MDL:OFFICEJET PRO 1170C SERIES;DES:Hewlett-Packard OfficeJet Pro 1170C Series;CMD:PCL,MLC,PML,PJL;" driver="hp-oj_pro_1170c" manufacturer="HP" model="800" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_Pro_1170C" /> - <printer translate="name" name="HP OfficeJet Pro 1175C" deviceid="MFG:HEWLETT-PACKARD;MDL:OFFICEJET PRO 1170C SERIES;DES:Hewlett-Packard OfficeJet Pro 1170C Series;CMD:PCL,MLC,PML,PJL;" driver="hp-oj_pro_1175c" manufacturer="HP" model="800" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_Pro_1175C" /> - <printer translate="name" name="HP OfficeJet R40" deviceid="MFG:HEWLETT-PACKARD;MDL:OFFICEJET R40;DES:Hewlett-Packard OfficeJet R40;CMD:MLC,PCL,PML,SCL;" driver="hp-oj_r40" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_R40" /> - <printer translate="name" name="HP OfficeJet R45" deviceid="MFG:HEWLETT-PACKARD;MDL:OFFICEJET R40;DES:Hewlett-Packard OfficeJet R40;CMD:MLC,PCL,PML,SCL;" driver="hp-oj_r45" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_R45" /> - <printer translate="name" name="HP OfficeJet R60" deviceid="MFG:HEWLETT-PACKARD;MDL:OFFICEJET R60;DES:Hewlett-Packard OfficeJet R60;CMD:MLC,PCL,PML,SCL;" driver="hp-oj_r60" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_R60" /> - <printer translate="name" name="HP OfficeJet R65" deviceid="MFG:HEWLETT-PACKARD;MDL:OFFICEJET R65;DES:Hewlett-Packard OfficeJet R65;CMD:MLC,PCL,PML,SCL;" driver="hp-oj_r65" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_R65" /> - <printer translate="name" name="HP OfficeJet R80" deviceid="MFG:HEWLETT-PACKARD;MDL:OFFICEJET R80;DES:Hewlett-Packard OfficeJet R80;CMD:MLC,PCL,PML,SCL;" driver="hp-oj_r80" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_R80" /> - <printer translate="name" name="HP OfficeJet T45" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet T Series;DES:Hewlett-Packard OfficeJet T Series;CMD:MLC,PCL,PML;" driver="hp-oj_t45" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_T45" /> - <printer translate="name" name="HP OfficeJet T65" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet T Series;DES:Hewlett-Packard OfficeJet T Series;CMD:MLC,PCL,PML;" driver="hp-oj_t65" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_T65" /> - <printer translate="name" name="HP OfficeJet V40" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet V40;DES:Hewlett-Packard OfficeJet V Series;CMD:MLC,PCL,PML;" driver="hp-oj_v40" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_V40" /> - <printer translate="name" name="HP OfficeJet V40xi" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet V40xi;DES:Hewlett-Packard OfficeJet V Series;CMD:MLC,PCL,PML;" driver="hp-oj_v40xi" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet_V40xi" /> - <printer translate="name" name="HP OfficeJet" driver="hp-oj" manufacturer="HP" model="500" parameters="pcl_inkjet_params" foomaticid="HP-OfficeJet" /> - <printer translate="name" name="HP PSC 370" deviceid="MFG:Hewlett-Packard;MDL:Printer/Scanner/Copier 300;CMD:MLC,PCL,PML;" driver="hp-psc_370" manufacturer="HP" model="690" parameters="pcl_inkjet_params" foomaticid="HP-PSC_370" /> - <printer translate="name" name="HP PSC 380" deviceid="MFG:Hewlett-Packard;MDL:Printer/Scanner/Copier 300;CMD:MLC,PCL,PML;" driver="hp-psc_380" manufacturer="HP" model="690" parameters="pcl_inkjet_params" foomaticid="HP-PSC_380" /> - <printer translate="name" name="HP PSC 500" deviceid="MFG:HEWLETT-PACKARD;MDL:PSC 500;DES:Hewlett-Packard PSC 500;CMD:MLC,PCL,PML,SCL;" driver="hp-psc_500" manufacturer="HP" model="840" parameters="pcl_inkjet_params" foomaticid="HP-PSC_500" /> - <printer translate="name" name="HP PSC 750" deviceid="MFG:Hewlett-Packard;MDL:PSC 750;DES:Hewlett-Packard PSC 700 Series;CMD:MLC,PCL,PML;" driver="hp-psc_750" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-PSC_750" /> - <printer translate="name" name="HP PSC 950" deviceid="MFG:Hewlett-Packard;MDL:PSC 900 Series;DES:Hewlett-Packard PSC 900 Series;CMD:MLC,PCL,PML;" driver="hp-psc_950" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-PSC_950" /> - <printer translate="name" name="HP PSC 950xi" deviceid="MFG:Hewlett-Packard;MDL:PSC 900 Series;DES:Hewlett-Packard PSC 900 Series;CMD:MLC,PCL,PML;" driver="hp-psc_950xi" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-PSC_950xi" /> - <printer translate="name" name="HP PSC 2110" deviceid="MFG:Hewlett-Packard;MDL:PSC 2100 Series;CMD:MLC,PCL,PML,DW-PCL,DYN;" driver="hp-psc_2110" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-PSC_2110" /> - <printer translate="name" name="HP PSC 2150" deviceid="MFG:Hewlett-Packard;MDL:PSC 2150 Series;CMD:MLC,PCL,PML,DW-PCL,DYN;" driver="hp-psc_2150" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-PSC_2150" /> - <printer translate="name" name="HP PSC 2210" deviceid="MFG:Hewlett-Packard;MDL:PSC 2200 Series;CMD:MLC,PCL,PML,DW-PCL,DYN;" driver="hp-psc_2210" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-PSC_2210" /> - <printer translate="name" name="HP PhotoSmart 7150" deviceid="MFG:hp;MDL:photosmart 7150;DES:hp photosmart 7150;CMD:MLC,PCL,PML,DW-PCL,DYN,DESKJET;" driver="hp-psc_7150" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-PhotoSmart_7150" /> - <printer translate="name" name="HP PhotoSmart 7345" driver="hp-psc_7345" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-PhotoSmart_7345" /> - <printer translate="name" name="HP PhotoSmart 7350" deviceid="MFG:hp;MDL:photosmart 7350;DES:hp photosmart 7350;CMD:MLC,PCL,PML,DW-PCL,DYN,DESKJET;" driver="hp-psc_7350" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-PhotoSmart_7350" /> - <printer translate="name" name="HP PhotoSmart 7550" deviceid="MFG:hp;MDL:photosmart 7550;DES:hp photosmart 7550;CMD:MLC,PCL,PML,DW-PCL,DYN,DESKJET;" driver="hp-psc_7550" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-PhotoSmart_7550" /> - <printer translate="name" name="HP PhotoSmart P100" deviceid="MFG:HP;MDL:PHOTOSMART 100;DES:hp photosmart 100;CMD:MLC,PCL,PML,BIDI-ECP,ECP18,DW-PCL;" driver="hp-psc_p100" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-PhotoSmart_P100" /> - <printer translate="name" name="HP PhotoSmart P130" driver="hp-psc_p130" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-PhotoSmart_P130" /> - <printer translate="name" name="HP PhotoSmart P230" driver="hp-psc_p230" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-PhotoSmart_P230" /> - <printer translate="name" name="HP PhotoSmart P1000" deviceid="MFG:HEWLETT-PACKARD;MDL:PHOTOSMART P1000;DES:Hewlett-Packard PhotoSmart P1000;CMD:MLC,PCL,PML;" driver="pcl-P1000" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-PhotoSmart_P1000" /> <!-- Uses 900 series driver --> - <printer translate="name" name="HP PhotoSmart P1100" deviceid="MFG:HEWLETT-PACKARD;MDL:PHOTOSMART P1100;DES:Hewlett-Packard PhotoSmart P1100;CMD:MLC,PCL,PML;" driver="pcl-P1100" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-PhotoSmart_P1100" /> <!-- Uses 900 series driver --> - <printer translate="name" name="HP PhotoSmart P1115" deviceid="MFG:HP;MDL:PHOTOSMART 1115;DES:hp photosmart 1115;CMD:MLC,PCL,PML,BIDI-ECP,ECP18,DW-PCL;" driver="hp-psc_p1115" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-PhotoSmart_P1115" /> - <printer translate="name" name="HP PhotoSmart P1215" driver="hp-psc_p1215" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-PhotoSmart_P1215" /> - <printer translate="name" name="HP PhotoSmart P1218" deviceid="MFG:HP;MDL:PHOTOSMART 1218;DES:hp photosmart 1218;CMD:MLC,PCL,PML,BIDI-ECP,ECP18,DW-PCL;" driver="hp-psc_p1218" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-PhotoSmart_P1218" /> - <printer translate="name" name="HP PhotoSmart P1315" deviceid="MFG:HP;MDL:PHOTOSMART 1315;DES:hp photosmart 1315;CMD:MLC,PCL,PML,BIDI-ECP,ECP18,DW-PCL;" driver="hp-psc_p1315" manufacturer="HP" model="900" parameters="pcl_inkjet_params" foomaticid="HP-PhotoSmart_P1315" /> - <printer translate="name" name="HP e-printer e20" driver="hp-e-printer_e20" manufacturer="HP" model="601" parameters="pcl_inkjet_params" foomaticid="HP-e-printer_e20" /> - <printer translate="name" name="IBM 4019" driver="ibm-4019" manufacturer="IBM" model="2" parameters="pcl_laser_params" foomaticid="IBM-4019" /> - <printer translate="name" name="IBM 4029 030 LaserPrinter 10" driver="ibm-4029_030_lp_10" manufacturer="IBM" model="3" parameters="pcl_laser_params" foomaticid="IBM-4029_030_LaserPrinter_10" /> - <printer translate="name" name="IBM 4312" driver="ibm-4312" manufacturer="IBM" model="2" parameters="pcl_laser_params" foomaticid="IBM-4312" /> - <printer translate="name" name="IBM Infoprint 12" deviceid="MFG:IBM;MDL:Infoprint;CMD:PCL5E,PCL6;" driver="ibm-infoprint_12" manufacturer="IBM" model="6" parameters="pcl_laser_params" foomaticid="IBM-Infoprint_12" /> - <printer translate="name" name="IBM Page Printer 3112" deviceid="MFG:Lexmark International;MDL:IBM 3112 Page Printer;DES:IBM 3112 Page Printer;CMD:PCL 5 Emulation, PostScript Level 2 Emulation, NPAP, PJL;" driver="ibm-pp_3112" manufacturer="IBM" model="6" parameters="pcl_laser_params" foomaticid="IBM-Page_Printer_3112" /> - <printer translate="name" name="Infotec 4353 MF" driver="infotec-4353_mf" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-4353_MF" /> - <printer translate="name" name="Infotec 4452 MF" driver="infotec-4452_mf" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-4452_MF" /> - <printer translate="name" name="Infotec 4651 MF" deviceid="MFG:Lexmark International;MDL:IBM 3112 Page Printer;DES:IBM 3112 Page Printer;CMD:PCL 5 Emulation, PostScript Level 2 Emulation, NPAP, PJL;" driver="infotec-4651_mf" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-4651_MF" /> - <printer translate="name" name="Infotec IS2022" driver="infotec-is2022" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS2022" /> - <printer translate="name" name="Infotec IS2027" driver="infotec-is2027" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS2027" /> - <printer translate="name" name="Infotec IS2032" driver="infotec-is2032" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS2032" /> - <printer translate="name" name="Infotec IS2035" driver="infotec-is2035" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS2035" /> - <printer translate="name" name="Infotec IS2045" driver="infotec-is2045" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS2045" /> - <printer translate="name" name="Infotec IS2090" driver="infotec-is2090" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS2090" /> - <printer translate="name" name="Infotec IS2105" driver="infotec-is2105" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS2105" /> - <printer translate="name" name="Infotec IS 2015" driver="infotec-is_2015" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2015" /> - <printer translate="name" name="Infotec IS 2018" driver="infotec-is_2018" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2018" /> - <printer translate="name" name="Infotec IS 2018D" driver="infotec-is_2018d" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2018D" /> - <printer translate="name" name="Infotec IS 2060" driver="infotec-is_2060" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2060" /> - <printer translate="name" name="Infotec IS 2075" driver="infotec-is_2075" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2075" /> - <printer translate="name" name="Infotec IS 2122" driver="infotec-is_2122" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2122" /> - <printer translate="name" name="Infotec IS 2127" driver="infotec-is_2127" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2127" /> - <printer translate="name" name="Infotec IS 2132" driver="infotec-is_2132" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2132" /> - <printer translate="name" name="Infotec IS 2135" driver="infotec-is_2135" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2135" /> - <printer translate="name" name="Infotec IS 2145" driver="infotec-is_2145" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2145" /> - <printer translate="name" name="Infotec IS 2151" driver="infotec-is_2151" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2151" /> - <printer translate="name" name="Infotec IS 2160" driver="infotec-is_2160" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2160" /> - <printer translate="name" name="Infotec IS 2175" driver="infotec-is_2175" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2175" /> - <printer translate="name" name="Infotec IS 2215" driver="infotec-is_2215" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2215" /> - <printer translate="name" name="Infotec IS 2216" driver="infotec-is_2216" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2216" /> - <printer translate="name" name="Infotec IS 2220" driver="infotec-is_2220" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2220" /> - <printer translate="name" name="Infotec IS 2220D" driver="infotec-is_2220d" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2220D" /> - <printer translate="name" name="Infotec IS 2225" driver="infotec-is_2225" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2225" /> - <printer translate="name" name="Infotec IS 2230" driver="infotec-is_2230" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2230" /> - <printer translate="name" name="Infotec IS 2235" driver="infotec-is_2235" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2235" /> - <printer translate="name" name="Infotec IS 2245" driver="infotec-is_2245" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2245" /> - <printer translate="name" name="Infotec IS 2255" driver="infotec-is_2255" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2255" /> - <printer translate="name" name="Infotec IS 2265" driver="infotec-is_2265" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2265" /> - <printer translate="name" name="Infotec IS 2275" driver="infotec-is_2275" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2275" /> - <printer translate="name" name="Infotec IS 2316" driver="infotec-is_2316" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2316" /> - <printer translate="name" name="Infotec IS 2320" driver="infotec-is_2320" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2320" /> - <printer translate="name" name="Infotec IS 2325" driver="infotec-is_2325" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2325" /> - <printer translate="name" name="Infotec IS 2416" driver="infotec-is_2416" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2416" /> - <printer translate="name" name="Infotec IS 2425" driver="infotec-is_2425" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2425" /> - <printer translate="name" name="Infotec IS 2430" driver="infotec-is_2430" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2430" /> - <printer translate="name" name="Infotec IS 2435" driver="infotec-is_2435" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2435" /> - <printer translate="name" name="Infotec IS 2445" driver="infotec-is_2445" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_2445" /> - <printer translate="name" name="Infotec IS 3090" driver="infotec-is_3090" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_3090" /> - <printer translate="name" name="Infotec IS 3110" driver="infotec-is_3110" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_3110" /> - <printer translate="name" name="Infotec IS 3135" driver="infotec-is_3135" manufacturer="Infotec" model="6" parameters="pcl_laser_params" foomaticid="Infotec-IS_3135" /> - <printer translate="name" name="Infotec MP 2550" driver="infotec-mp_2550" manufacturer="Infotec" model="61" parameters="pcl_laser_params" foomaticid="Infotec-MP_2550" /> - <printer translate="name" name="Infotec MP 2550B" driver="infotec-mp_2550b" manufacturer="Infotec" model="61" parameters="pcl_laser_params" foomaticid="Infotec-MP_2550B" /> - <printer translate="name" name="Infotec MP 3350" driver="infotec-mp_3350" manufacturer="Infotec" model="61" parameters="pcl_laser_params" foomaticid="Infotec-MP_3350" /> - <printer translate="name" name="Infotec MP 3350B" driver="infotec-mp_3350b" manufacturer="Infotec" model="61" parameters="pcl_laser_params" foomaticid="Infotec-MP_3350B" /> - <printer translate="name" name="Infotec MP 4000" driver="infotec-mp_4000" manufacturer="Infotec" model="61" parameters="pcl_laser_params" foomaticid="Infotec-MP_4000" /> - <printer translate="name" name="Infotec MP 4000B" driver="infotec-mp_4000b" manufacturer="Infotec" model="61" parameters="pcl_laser_params" foomaticid="Infotec-MP_4000B" /> - <printer translate="name" name="Infotec MP 5000" driver="infotec-mp_5000" manufacturer="Infotec" model="61" parameters="pcl_laser_params" foomaticid="Infotec-MP_5000" /> - <printer translate="name" name="Infotec MP 5000B" driver="infotec-mp_5000b" manufacturer="Infotec" model="61" parameters="pcl_laser_params" foomaticid="Infotec-MP_5000B" /> - <printer translate="name" name="Kyocera CS-1815" driver="kyocera-cs-1815" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-CS-1815" /> - <printer translate="name" name="Kyocera F-1010" deviceid="MFG:Kyocera;MDL:F-1010;DES:Kyocera F-1010;" driver="kyocera-f-1010" manufacturer="Kyocera" model="22" parameters="pcl_laser_params" foomaticid="Kyocera-F-1010" /> - <printer translate="name" name="Kyocera FS-600 - KPDL-2" driver="kyocera-fs-600_kpdl-2" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-600_KPDL-2" /> - <printer translate="name" name="Kyocera FS-600" deviceid="MFG:Kyocera;MDL:Kyocera FS-600;DES:Kyocera FS-600;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-600" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-600" /> - <printer translate="name" name="Kyocera FS-680" deviceid="MFG:Kyocera;MDL:Kyocera FS-680;DES:Kyocera FS-680;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-680" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-680" /> - <printer translate="name" name="Kyocera FS-800" deviceid="MFG:Kyocera;MDL:Kyocera FS-800;DES:Kyocera FS-800;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-800" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-800" /> - <printer translate="name" name="Kyocera FS-920" driver="kyocera-fs-920" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-920" /> - <printer translate="name" name="Kyocera FS-1000" deviceid="MFG:Kyocera;MDL:Kyocera FS-1000;DES:Kyocera FS-1000;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-1000" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1000" /> - <printer translate="name" name="Kyocera FS-1000+" driver="kyocera-fs-1000plus" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1000plus" /> - <printer translate="name" name="Kyocera FS-1010" deviceid="MFG:Kyocera Mita;MDL:Kyocera Mita FS-1010;DES:Kyocera FS-1010;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-1010" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1010" /> - <printer translate="name" name="Kyocera FS-1018MFP" driver="kyocera-fs-1018mfp" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1018MFP" /> - <printer translate="name" name="Kyocera FS-1020D" driver="kyocera-fs-1020d" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1020D" /> - <printer translate="name" name="Kyocera FS-1030D" driver="kyocera-fs-1030d" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1030D" /> - <printer translate="name" name="Kyocera FS-1050" deviceid="MFG:Kyocera Mita;MDL:Kyocera Mita FS-1050;DES:Kyocera FS-1050;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-1050" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1050" /> - <printer translate="name" name="Kyocera FS-1118MFP" deviceid="MFG:Kyocera;MDL:FS-1118MFP;CMD:PCLXL,PostScript Emulation,PCL5E,PJL;" driver="kyocera-fs-1118mfp" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1118MFP" /> - <printer translate="name" name="Kyocera FS-1135MFP" deviceid="MFG:Kyocera;MDL:FS-1135MFP;CMD:PCLXL,PostScript Emulation,PCL5E,PJL;" driver="kyocera-fs-1135mfp" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1135MFP" /> - <printer translate="name" name="Kyocera FS-1200" deviceid="MFG:Kyocera;MDL:Kyocera FS-1200;DES:Kyocera FS-1200;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-1200" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1200" /> - <printer translate="name" name="Kyocera FS-1600" deviceid="MFG:Kyocera;MDL:FS-1600;DES:Kyocera FS-1600;" driver="kyocera-fs-1600" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1600" /> - <printer translate="name" name="Kyocera FS-1600+" driver="kyocera-fs-1600plus" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1600plus" /> - <printer translate="name" name="Kyocera FS-1700" deviceid="MFG:Kyocera;MDL:Kyocera FS-1700;DES:Kyocera FS-1700;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-1700" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1700" /> - <printer translate="name" name="Kyocera FS-1700+" driver="kyocera-fs-1700plus" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1700plus" /> - <printer translate="name" name="Kyocera FS-1714M" driver="kyocera-fs-1714m" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1714M" /> - <printer translate="name" name="Kyocera FS-1750" deviceid="MFG:Kyocera;MDL:Kyocera FS-1750;DES:Kyocera FS-1750;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-1750" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1750" /> - <printer translate="name" name="Kyocera FS-1800" deviceid="MFG:Kyocera Mita;MDL:Kyocera Mita FS-1800;DES:Kyocera FS-1800;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-1800" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1800" /> - <printer translate="name" name="Kyocera FS-1800+" driver="kyocera-fs-1800plus" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1800plus" /> - <printer translate="name" name="Kyocera FS-1900" deviceid="MFG:Kyocera Mita;MDL:Kyocera Mita FS-1900;DES:Kyocera FS-1900;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-1900" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1900" /> - <printer translate="name" name="Kyocera FS-1920" driver="kyocera-fs-1920" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-1920" /> - <printer translate="name" name="Kyocera FS-2000D" driver="kyocera-fs-2000d" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-2000D" /> - <printer translate="name" name="Kyocera FS-3500" deviceid="MFG:Kyocera;MDL:FS-3500;DES:Kyocera FS-3500;" driver="kyocera-fs-3500" manufacturer="Kyocera" model="32" parameters="pcl_laser_params" foomaticid="Kyocera-FS-3500" /> - <printer translate="name" name="Kyocera FS-3600" deviceid="MFG:Kyocera;MDL:FS-3600;DES:Kyocera FS-3600;" driver="kyocera-fs-3600" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-3600" /> - <printer translate="name" name="Kyocera FS-3600+" driver="kyocera-fs-3600plus" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-3600plus" /> - <printer translate="name" name="Kyocera FS-3700" deviceid="MFG:Kyocera;MDL:Kyocera FS-3700;DES:Kyocera FS-3700;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-3700" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-3700" /> - <printer translate="name" name="Kyocera FS-3700+" driver="kyocera-fs-3700plus" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-3700plus" /> - <printer translate="name" name="Kyocera FS-3718M" driver="kyocera-fs-3718m" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-3718M" /> - <printer translate="name" name="Kyocera FS-3750" deviceid="MFG:Kyocera;MDL:Kyocera FS-3750;DES:Kyocera FS-3750;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-3750" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-3750" /> - <printer translate="name" name="Kyocera FS-3800" deviceid="MFG:Kyocera Mita;MDL:Kyocera Mita FS-3800;DES:Kyocera FS-3800;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-3800" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-3800" /> - <printer translate="name" name="Kyocera FS-3820N" driver="kyocera-fs-3820n" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-3820N" /> - <printer translate="name" name="Kyocera FS-3830N" driver="kyocera-fs-3830n" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-3830N" /> - <printer translate="name" name="Kyocera FS-3900DN" driver="kyocera-fs-3900dn" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-3900DN" /> - <printer translate="name" name="Kyocera FS-4000DN" driver="kyocera-fs-4000dn" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-4000DN" /> - <printer translate="name" name="Kyocera FS-5800C" deviceid="MFG:Kyocera;MDL:Kyocera FS-5800C;DES:Kyocera FS-5800C;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-5800c" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-5800C" /> - <printer translate="name" name="Kyocera FS-5900C" deviceid="MFG:Kyocera;MDL:Kyocera FS-5900C;DES:Kyocera FS-5900C;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-5900c" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-FS-5900C" /> - <printer translate="name" name="Kyocera FS-6020" driver="kyocera-fs-6020" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-FS-6020" /> - <printer translate="name" name="Kyocera FS-6026" driver="kyocera-fs-6026" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-FS-6026" /> - <printer translate="name" name="Kyocera FS-6300" driver="kyocera-fs-6300" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-FS-6300" /> - <printer translate="name" name="Kyocera FS-6500" deviceid="MFG:Kyocera;MDL:FS-6500;DES:Kyocera FS-6500;" driver="kyocera-fs-6500" manufacturer="Kyocera" model="32" parameters="pcl_laser_params" foomaticid="Kyocera-FS-6500" /> - <printer translate="name" name="Kyocera FS-6500+" driver="kyocera-fs-6500plus" manufacturer="Kyocera" model="35" parameters="pcl_laser_params" foomaticid="Kyocera-FS-6500plus" /> - <printer translate="name" name="Kyocera FS-6700" deviceid="MFG:Kyocera;MDL:Kyocera FS-6700;DES:Kyocera FS-6700;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-6700" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-FS-6700" /> - <printer translate="name" name="Kyocera FS-6750" driver="kyocera-fs-6750" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-FS-6750" /> - <printer translate="name" name="Kyocera FS-6900" driver="kyocera-fs-6900" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-FS-6900" /> - <printer translate="name" name="Kyocera FS-6950DN" driver="kyocera-fs-6950dn" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-FS-6950DN" /> - <printer translate="name" name="Kyocera FS-7000" deviceid="MFG:Kyocera;MDL:Kyocera FS-7000;DES:Kyocera FS-7000;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-7000" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-FS-7000" /> - <printer translate="name" name="Kyocera FS-7000+" driver="kyocera-fs-7000plus" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-FS-7000plus" /> - <printer translate="name" name="Kyocera FS-7028M" driver="kyocera-fs-7028m" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-FS-7028M" /> - <printer translate="name" name="Kyocera FS-8000C" deviceid="MFG:Kyocera Mita;MDL:Kyocera Mita FS-8000C;DES:Kyocera FS-8000C;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-8000c" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-FS-8000C" /> - <printer translate="name" name="Kyocera FS-9000" deviceid="MFG:Kyocera;MDL:Kyocera FS-9000;DES:Kyocera FS-9000;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-9000" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-FS-9000" /> - <printer translate="name" name="Kyocera FS-9100DN" deviceid="MFG:Kyocera Mita;MDL:Kyocera Mita FS-9100DN;DES:Kyocera FS-9100DN;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-9100dn" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-FS-9100DN" /> - <printer translate="name" name="Kyocera FS-9130DN" driver="kyocera-fs-9130dn" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-FS-9130DN" /> - <printer translate="name" name="Kyocera FS-9500DN" deviceid="MFG:Kyocera Mita;MDL:Kyocera Mita FS-9500DN;DES:Kyocera FS-9500DN;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-9500dn" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-FS-9500DN" /> - <printer translate="name" name="Kyocera FS-9530DN" driver="kyocera-fs-9530dn" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-FS-9530DN" /> - <printer translate="name" name="Kyocera KM-1510" driver="kyocera-km-1510" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-KM-1510" /> - <printer translate="name" name="Kyocera KM-1530" deviceid="MFG:Kyocera Mita;MDL:KM-1530;DES:Kyocera Mita KM-1530;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-km-1530" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-KM-1530" /> - <printer translate="name" name="Kyocera KM-1810" deviceid="MFG:Kyocera Mita;MDL:KM-1810;DES:Kyocera Mita KM-1810;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-km-1810" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-KM-1810" /> - <printer translate="name" name="Kyocera KM-1815" driver="kyocera-km-1815" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-KM-1815" /> - <printer translate="name" name="Kyocera KM-1820" driver="kyocera-km-1820" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" foomaticid="Kyocera-KM-1820" /> - <printer translate="name" name="Kyocera KM-2030" deviceid="MFG:Kyocera Mita;MDL:KM-2030;DES:Kyocera Mita KM-2030;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-km-2030" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-KM-2030" /> - <printer translate="name" name="Kyocera KM-2530" deviceid="MFG:Kyocera Mita;MDL:KM-2530;DES:Kyocera Mita KM-2530;" driver="kyocera-km-2530" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-KM-2530" /> - <printer translate="name" name="Kyocera KM-3050" driver="kyocera-km-3050" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-KM-3050" /> - <printer translate="name" name="Kyocera KM-3530" deviceid="MFG:Kyocera Mita;MDL:KM-3530;DES:Kyocera Mita KM-3530;" driver="kyocera-km-3530" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-KM-3530" /> - <printer translate="name" name="Kyocera KM-4050" driver="kyocera-km-4050" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-KM-4050" /> - <printer translate="name" name="Kyocera KM-4230" deviceid="MFG:Kyocera Mita;MDL:KM-4230;DES:Kyocera Mita KM-4230;" driver="kyocera-km-4230" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-KM-4230" /> - <printer translate="name" name="Kyocera KM-4230/5230" driver="kyocera-km-4230_5230" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-KM-4230_5230" /> - <printer translate="name" name="Kyocera KM-4530" deviceid="MFG:Kyocera Mita;MDL:KM-4530;DES:Kyocera Mita KM-4530;" driver="kyocera-km-4530" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-KM-4530" /> - <printer translate="name" name="Kyocera KM-5050" driver="kyocera-km-5050" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-KM-5050" /> - <printer translate="name" name="Kyocera KM-5230" deviceid="MFG:Kyocera Mita;MDL:KM-5230;DES:Kyocera Mita KM-5230;" driver="kyocera-km-5230" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-KM-5230" /> - <printer translate="name" name="Kyocera KM-5530" deviceid="MFG:Kyocera Mita;MDL:KM-5530;DES:Kyocera Mita KM-5530;" driver="kyocera-km-5530" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-KM-5530" /> - <printer translate="name" name="Kyocera KM-6030" driver="kyocera-km-6030" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-KM-6030" /> - <printer translate="name" name="Kyocera KM-6230" deviceid="MFG:Kyocera Mita;MDL:KM-6230;DES:Kyocera Mita KM-6230;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-km-6230" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-KM-6230" /> - <printer translate="name" name="Kyocera KM-8030" driver="kyocera-km-8030" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" foomaticid="Kyocera-KM-8030" /> - <printer translate="name" name="Lanier 5622" driver="lanier-5622" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-5622" /> - <printer translate="name" name="Lanier 5627" driver="lanier-5627" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-5627" /> - <printer translate="name" name="Lanier 5632" driver="lanier-5632" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-5632" /> - <printer translate="name" name="Lanier 5635" driver="lanier-5635" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-5635" /> - <printer translate="name" name="Lanier 5645" driver="lanier-5645" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-5645" /> - <printer translate="name" name="Lanier LD0105" driver="lanier-ld0105" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD0105" /> - <printer translate="name" name="Lanier LD015" driver="lanier-ld015" manufacturer="Lanier" model="6" parameters="pcl_laser_params" foomaticid="Lanier-LD015" /> - <printer translate="name" name="Lanier LD035" driver="lanier-ld035" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD035" /> - <printer translate="name" name="Lanier LD045" driver="lanier-ld045" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD045" /> - <printer translate="name" name="Lanier LD060" driver="lanier-ld060" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD060" /> - <printer translate="name" name="Lanier LD075" driver="lanier-ld075" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD075" /> - <printer translate="name" name="Lanier LD090" driver="lanier-ld090" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD090" /> - <printer translate="name" name="Lanier LD115" driver="lanier-ld115" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD115" /> - <printer translate="name" name="Lanier LD116" driver="lanier-ld116" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD116" /> - <printer translate="name" name="Lanier LD118" driver="lanier-ld118" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD118" /> - <printer translate="name" name="Lanier LD118d" driver="lanier-ld118d" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD118d" /> - <printer translate="name" name="Lanier LD120" driver="lanier-ld120" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD120" /> - <printer translate="name" name="Lanier LD120d" driver="lanier-ld120d" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD120d" /> - <printer translate="name" name="Lanier LD122" driver="lanier-ld122" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD122" /> - <printer translate="name" name="Lanier LD127" driver="lanier-ld127" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD127" /> - <printer translate="name" name="Lanier LD132" driver="lanier-ld132" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD132" /> - <printer translate="name" name="Lanier LD135" driver="lanier-ld135" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD135" /> - <printer translate="name" name="Lanier LD145" driver="lanier-ld145" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD145" /> - <printer translate="name" name="Lanier LD151" driver="lanier-ld151" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD151" /> - <printer translate="name" name="Lanier LD160" driver="lanier-ld160" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD160" /> - <printer translate="name" name="Lanier LD175" driver="lanier-ld175" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD175" /> - <printer translate="name" name="Lanier LD225" driver="lanier-ld225" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD225" /> - <printer translate="name" name="Lanier LD230" driver="lanier-ld230" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD230" /> - <printer translate="name" name="Lanier LD235" driver="lanier-ld235" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD235" /> - <printer translate="name" name="Lanier LD245" driver="lanier-ld245" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-LD245" /> - <printer translate="name" name="Lanier MP2500/LD125" driver="lanier-ld125" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP2500_LD125" /> - <printer translate="name" name="Lanier MP 1100/LD1100" driver="lanier-ld1100" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_1100_LD1100" /> - <printer translate="name" name="Lanier MP 1350/LD1135" driver="lanier-ld1135" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_1350_LD1135" /> - <printer translate="name" name="Lanier MP 1600/LD316" driver="lanier-ld316" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_1600_LD316" /> - <printer translate="name" name="Lanier MP 161/LD016" driver="lanier-ld016" manufacturer="Lanier" model="6" parameters="pcl_laser_params" foomaticid="Lanier-MP_161_LD016" /> - <printer translate="name" name="Lanier MP 2000/LD320d" driver="lanier-ld320d" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_2000_LD320d" /> - <printer translate="name" name="Lanier MP 2510/LD325" driver="lanier-ld325" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_2510_LD325" /> - <printer translate="name" name="Lanier MP 2550B/LD425B" driver="lanier-ld425b" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_2550B_LD425B" /> - <printer translate="name" name="Lanier MP 2550/LD425" driver="lanier-ld425" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_2550_LD425" /> - <printer translate="name" name="Lanier MP 3010/LD330" driver="lanier-ld330" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_3010_LD330" /> - <printer translate="name" name="Lanier MP 3350B/LD433B" driver="lanier-ld433b" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_3350B_LD433B" /> - <printer translate="name" name="Lanier MP 3350/LD433" driver="lanier-ld433" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_3350_LD433" /> - <printer translate="name" name="Lanier MP 3500/LD335" driver="lanier-ld335" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_3500_LD335" /> - <printer translate="name" name="Lanier MP 4000B/LD040B" driver="lanier-ld040b" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_4000B_LD040B" /> - <printer translate="name" name="Lanier MP 4000/LD040" driver="lanier-ld040" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_4000_LD040" /> - <printer translate="name" name="Lanier MP 4500/LD345" driver="lanier-ld345" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_4500_LD345" /> - <printer translate="name" name="Lanier MP 5000B/LD050B" driver="lanier-ld050b" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_5000B_LD050B" /> - <printer translate="name" name="Lanier MP 5000/LD050" driver="lanier-ld050" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_5000_LD050" /> - <printer translate="name" name="Lanier MP 5500/LD255" driver="lanier-ld255" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_5500_LD255" /> - <printer translate="name" name="Lanier MP 6500/LD265" driver="lanier-ld265" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_6500_LD265" /> - <printer translate="name" name="Lanier MP 7500/LD275" driver="lanier-ld275" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_7500_LD275" /> - <printer translate="name" name="Lanier MP 9000/LD190" driver="lanier-ld190" manufacturer="Lanier" model="61" parameters="pcl_laser_params" foomaticid="Lanier-MP_9000_LD190" /> - <printer translate="name" name="Lexmark 4076" driver="lexmark-4076" manufacturer="Lexmark" model="500" parameters="pcl_inkjet_params" foomaticid="Lexmark-4076" /> - <printer translate="name" name="Lexmark Optra E" driver="lexmark-optra_e" manufacturer="Lexmark" model="6" parameters="pcl_laser_params" foomaticid="Lexmark-Optra_E" /> - <printer translate="name" name="Lexmark Optra E+" driver="lexmark-optra_eplus" manufacturer="Lexmark" model="6" parameters="pcl_laser_params" foomaticid="Lexmark-Optra_Eplus" /> - <printer translate="name" name="Lexmark Optra E220" driver="lexmark-optra_e220" manufacturer="Lexmark" model="6" parameters="pcl_laser_params" foomaticid="Lexmark-Optra_E220" /> - <printer translate="name" name="Lexmark Optra E321" deviceid="MFG:Lexmark International;MDL:Lexmark E321;DES:Lexmark E321;CMD:PCL 5 Emulation, PostScript Level 3 For Mac Emulation, NPAP, PJL;" driver="lexmark-optra_e321" manufacturer="Lexmark" model="6" parameters="pcl_laser_params" foomaticid="Lexmark-Optra_E321" /> - <printer translate="name" name="Lexmark Optra E323" driver="lexmark-optra_e323" manufacturer="Lexmark" model="6" parameters="pcl_laser_params" foomaticid="Lexmark-Optra_E323" /> - <printer translate="name" name="Lexmark Valuewriter 300" driver="lexmark-vw_300" manufacturer="Lexmark" model="2" parameters="pcl_laser_params" foomaticid="Lexmark-Valuewriter_300" /> - <printer translate="name" name="Minolta PagePro 6" deviceid="MFG:MINOLTA;MDL:PagePro 6;CMD:HP ENHANCED PCL5;" driver="minolta-pp_6" manufacturer="Minolta" model="6" parameters="pcl_laser_params" foomaticid="Minolta-PagePro_6" /> - <printer translate="name" name="Minolta PagePro 6e" driver="minolta-pp_6e" manufacturer="Minolta" model="6" parameters="pcl_laser_params" foomaticid="Minolta-PagePro_6e" /> - <printer translate="name" name="Minolta PagePro 6ex" deviceid="MFG:Minolta;MDL:PagePro 6e;CMD:HP ENHANCED PCL5e,PJL,WinStyler;" driver="minolta-pp_6ex" manufacturer="Minolta" model="6" parameters="pcl_laser_params" foomaticid="Minolta-PagePro_6ex" /> - <printer translate="name" name="Minolta PagePro 8" deviceid="MFG:MINOLTA;MDL:PagePro 8;CMD:HP ENHANCED PCL6,PJL;" driver="minolta-pp_8" manufacturer="Minolta" model="6" parameters="pcl_laser_params" foomaticid="Minolta-PagePro_8" /> - <printer translate="name" name="Minolta PagePro 8L" deviceid="MFG:Minolta;MDL:PagePro 8L;CMD:PrintGear;PCL;PLJ;" driver="minolta-pp_8l" manufacturer="Minolta" model="2" parameters="pcl_laser_params" foomaticid="Minolta-PagePro_8L" /> - <printer translate="name" name="Minolta PagePro 1100" deviceid="MFG:MINOLTA;MDL:PagePro 1100;CMD:HP ENHANCED PCL6,PJL;" driver="minolta-pp_1100" manufacturer="Minolta" model="6" parameters="pcl_laser_params" foomaticid="Minolta-PagePro_1100" /> - <printer translate="name" name="NEC SuperScript 660i" driver="nec-ssc_660i" manufacturer="NEC" model="6" parameters="pcl_laser_params" foomaticid="NEC-SuperScript_660i" /> - <printer translate="name" name="NEC SuperScript 860" driver="nec-ssc_860" manufacturer="NEC" model="2" parameters="pcl_laser_params" foomaticid="NEC-SuperScript_860" /> - <printer translate="name" name="NEC SuperScript 870" deviceid="MFG:NEC;MDL:SuperScript 870;DES:SuperScript 870;CMD:PrintGear,PCL,PJL;" driver="nec-ssc_870" manufacturer="NEC" model="2" parameters="pcl_laser_params" foomaticid="NEC-SuperScript_870" /> - <printer translate="name" name="NEC SuperScript 1260" driver="nec-ssc_1260" manufacturer="NEC" model="2" parameters="pcl_laser_params" foomaticid="NEC-SuperScript_1260" /> - <printer translate="name" name="NEC SuperScript 1400" driver="nec-ssc_1400" manufacturer="NEC" model="6" parameters="pcl_laser_params" foomaticid="NEC-SuperScript_1400" /> - <printer translate="name" name="NEC SuperScript 1800" deviceid="MFG:NEC;MDL:SuperScript 1800;CMD:PCL6,PCL5E;" driver="nec-ssc_1800" manufacturer="NEC" model="6" parameters="pcl_laser_params" foomaticid="NEC-SuperScript_1800" /> - <printer translate="name" name="NRG 10515/10518/10512" driver="nrg-10512" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-10515_10518_10512" /> - <printer translate="name" name="NRG 2205/2238/2212" driver="nrg-2212" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-2205_2238_2212" /> - <printer translate="name" name="NRG 2705/2738/2712" driver="nrg-2712" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-2705_2738_2712" /> - <printer translate="name" name="NRG 3205/3238/3212" driver="nrg-3212" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-3205_3238_3212" /> - <printer translate="name" name="NRG 3525/3508/3502" driver="nrg-3502" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-3525_3508_3502" /> - <printer translate="name" name="NRG 3545/3518/3532" driver="nrg-3532" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-3545_3518_3532" /> - <printer translate="name" name="NRG 4525/4508/4502" driver="nrg-4502" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-4525_4508_4502" /> - <printer translate="name" name="NRG 4545/4518/4532" driver="nrg-4532" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-4545_4518_4532" /> - <printer translate="name" name="NRG 6002/6005/6008" driver="nrg-6008" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-6002_6005_6008" /> - <printer translate="name" name="NRG 7502/7505/7508" driver="nrg-7508" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-7502_7505_7508" /> - <printer translate="name" name="NRG 9005/9008/9002" driver="nrg-9002" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-9005_9008_9002" /> - <printer translate="name" name="NRG DSm415" driver="nrg-dsm415" manufacturer="NRG" model="6" parameters="pcl_laser_params" foomaticid="NRG-DSm415" /> - <printer translate="name" name="NRG DSm615" driver="nrg-dsm615" manufacturer="NRG" model="6" parameters="pcl_laser_params" foomaticid="NRG-DSm615" /> - <printer translate="name" name="NRG DSm616" driver="nrg-dsm616" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-DSm616" /> - <printer translate="name" name="NRG DSm618" driver="nrg-dsm618" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-DSm618" /> - <printer translate="name" name="NRG DSm618d" driver="nrg-dsm618d" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-DSm618d" /> - <printer translate="name" name="NRG DSm620" driver="nrg-dsm620" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-DSm620" /> - <printer translate="name" name="NRG DSm620d" driver="nrg-dsm620d" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-DSm620d" /> - <printer translate="name" name="NRG DSm622" driver="nrg-dsm622" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-DSm622" /> - <printer translate="name" name="NRG DSm627" driver="nrg-dsm627" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-DSm627" /> - <printer translate="name" name="NRG DSm632" driver="nrg-dsm632" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-DSm632" /> - <printer translate="name" name="NRG DSm635" driver="nrg-dsm635" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-DSm635" /> - <printer translate="name" name="NRG DSm645" driver="nrg-dsm645" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-DSm645" /> - <printer translate="name" name="NRG DSm651" driver="nrg-dsm651" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-DSm651" /> - <printer translate="name" name="NRG DSm660" driver="nrg-dsm660" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-DSm660" /> - <printer translate="name" name="NRG DSm675" driver="nrg-dsm675" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-DSm675" /> - <printer translate="name" name="NRG DSm725" driver="nrg-dsm725" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-DSm725" /> - <printer translate="name" name="NRG DSm730" driver="nrg-dsm730" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-DSm730" /> - <printer translate="name" name="NRG DSm735" driver="nrg-dsm735" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-DSm735" /> - <printer translate="name" name="NRG DSm745" driver="nrg-dsm745" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-DSm745" /> - <printer translate="name" name="NRG MP 1100" driver="nrg-mp_1100" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_1100" /> - <printer translate="name" name="NRG MP 1350" driver="nrg-mp_1350" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_1350" /> - <printer translate="name" name="NRG MP 1600" driver="nrg-mp_1600" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_1600" /> - <printer translate="name" name="NRG MP 161" driver="nrg-mp_161" manufacturer="NRG" model="6" parameters="pcl_laser_params" foomaticid="NRG-MP_161" /> - <printer translate="name" name="NRG MP 2000" driver="nrg-mp_2000" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_2000" /> - <printer translate="name" name="NRG MP 2500" driver="nrg-mp_2500" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_2500" /> - <printer translate="name" name="NRG MP 2510" driver="nrg-mp_2510" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_2510" /> - <printer translate="name" name="NRG MP 2550" driver="nrg-mp_2550" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_2550" /> - <printer translate="name" name="NRG MP 2550B" driver="nrg-mp_2550b" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_2550B" /> - <printer translate="name" name="NRG MP 3010" driver="nrg-mp_3010" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_3010" /> - <printer translate="name" name="NRG MP 3350" driver="nrg-mp_3350" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_3350" /> - <printer translate="name" name="NRG MP 3350B" driver="nrg-mp_3350b" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_3350B" /> - <printer translate="name" name="NRG MP 3500" driver="nrg-mp_3500" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_3500" /> - <printer translate="name" name="NRG MP 4000" driver="nrg-mp_4000" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_4000" /> - <printer translate="name" name="NRG MP 4000B" driver="nrg-mp_4000b" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_4000B" /> - <printer translate="name" name="NRG MP 4500" driver="nrg-mp_4500" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_4500" /> - <printer translate="name" name="NRG MP 5000" driver="nrg-mp_5000" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_5000" /> - <printer translate="name" name="NRG MP 5000B" driver="nrg-mp_5000b" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_5000B" /> - <printer translate="name" name="NRG MP 5500" driver="nrg-mp_5500" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_5500" /> - <printer translate="name" name="NRG MP 6500" driver="nrg-mp_6500" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_6500" /> - <printer translate="name" name="NRG MP 7500" driver="nrg-mp_7500" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_7500" /> - <printer translate="name" name="NRG MP 9000" driver="nrg-mp_9000" manufacturer="NRG" model="61" parameters="pcl_laser_params" foomaticid="NRG-MP_9000" /> - <printer translate="name" name="Oki B401d" driver="oki-b401d" manufacturer="Oki" model="6" parameters="pcl_laser_params" foomaticid="Oki-B4401d" /> - <printer translate="name" name="Oki B4350" driver="oki-b4350" manufacturer="Oki" model="6" parameters="pcl_laser_params" foomaticid="Oki-B4350" /> - <printer translate="name" name="Oki OL400" driver="okidata-ol400" manufacturer="Oki" model="2" parameters="pcl_laser_params" foomaticid="Oki-OL400" /> - <printer translate="name" name="Oki OL400e" driver="okidata-ol400e" manufacturer="Oki" model="2" parameters="pcl_laser_params" foomaticid="Oki-OL400e" /> - <printer translate="name" name="Oki OL400ex" driver="okidata-ol400ex" manufacturer="Oki" model="2" parameters="pcl_laser_params" foomaticid="Oki-OL400ex" /> - <printer translate="name" name="Oki OL410e" driver="okidata-ol410e" manufacturer="Oki" model="6" parameters="pcl_laser_params" foomaticid="Oki-OL410e" /> - <printer translate="name" name="Oki OL600e" driver="okidata-ol600e" manufacturer="Oki" model="2" parameters="pcl_laser_params" foomaticid="Oki-OL600e" /> - <printer translate="name" name="Oki OL610e/S" driver="okidata-ol610e_s" manufacturer="Oki" model="2" parameters="pcl_laser_params" foomaticid="Oki-OL610e_S" /> - <printer translate="name" name="Oki OL800" driver="okidata-ol800" manufacturer="Oki" model="2" parameters="pcl_laser_params" foomaticid="Oki-OL800" /> - <printer translate="name" name="Oki OL810ex" driver="okidata-ol810ex" manufacturer="Oki" model="6" parameters="pcl_laser_params" foomaticid="Oki-OL810ex" /> - <printer translate="name" name="Oki Okipage 6e" deviceid="MFG:OKI DATA CORP;MDL:OKIDATA OKIPAGE 6e;DES:OKIDATA OKIPAGE 6e (HP4P);CMD:ENHANCED PCL5,PJL,EPSONFX,IBMPPR,HIPERWINDOWS;" driver="okidata-okp_6e" manufacturer="Oki" model="6" parameters="pcl_laser_params" foomaticid="Oki-Okipage_6e" /> - <printer translate="name" name="Oki Okipage 6ex" deviceid="MFG:OKI DATA CORP;MDL:OKIDATA OKIPAGE 6ex;DES:OKIDATA OKIPAGE 6ex (HP4P);CMD:ENHANCED PCL5,PJL,EPSONFX,IBMPR,HIPERWINDOWS;" driver="okidata-okp_6ex" manufacturer="Oki" model="6" parameters="pcl_laser_params" foomaticid="Oki-Okipage_6ex" /> - <printer translate="name" name="Oki Okipage 8p" deviceid="MFG:OKI DATA CORP;MDL:OKIPAGE 8p;DES:OKIPAGE 8p;CMD:PJL,PCLXL,PCL,EPSONFX,IBMPPR;" driver="okidata-okp_8p" manufacturer="Oki" model="6" parameters="pcl_laser_params" foomaticid="Oki-Okipage_8p" /> - <printer translate="name" name="Oki Okipage 10e" deviceid="MFG:OKI DATA CORP;MDL:OKIPAGE 10e;DES:OKIPAGE 10e;CMD:PJL,PCLXL,PCL,EPSONFX,IBMPPR;" driver="okidata-okp_10e" manufacturer="Oki" model="6" parameters="pcl_laser_params" foomaticid="Oki-Okipage_10e" /> - <printer translate="name" name="Oki Okipage 10ex" deviceid="MFG:OKI DATA CORP;MDL:OKIPAGE 10ex;DES:OKIPAGE 10ex;CMD:PJL,PCLXL,PCL,EPSONFX,IBMPPR;" driver="okidata-okp_10ex" manufacturer="Oki" model="6" parameters="pcl_laser_params" foomaticid="Oki-Okipage_10ex" /> - <printer translate="name" name="Oki Okipage 14ex" deviceid="MFG:OKI DATA CORP;MDL:OKIPAGE 14ex;DES:OKIPAGE 14ex;CMD:PJL,PCLXL,PCL,EPSONFX,IBMPPR;" driver="okidata-okp_14ex" manufacturer="Oki" model="6" parameters="pcl_laser_params" foomaticid="Oki-Okipage_14ex" /> - <printer translate="name" name="Oki Super 6e" deviceid="MFG:OKI DATA CORP;MDL:OKIPAGE 14ex;DES:OKIPAGE 14ex;CMD:PJL,PCLXL,PCL,EPSONFX,IBMPPR;" driver="okidata-super_6e" manufacturer="Oki" model="4" parameters="pcl_laser_params" foomaticid="Oki-Super_6e" /> - <printer translate="name" name="Olivetti JP350S" driver="olivetti-jp350s" manufacturer="Olivetti" model="2" parameters="pcl_laser_params" foomaticid="Olivetti-JP350S" /> - <printer translate="name" name="Olivetti PG 306" driver="olivetti-pg_306" manufacturer="Olivetti" model="2" parameters="pcl_laser_params" foomaticid="Olivetti-PG_306" /> - <printer translate="name" name="PCPI 1030" driver="pcpi-1030" manufacturer="PCPI" model="2" parameters="pcl_laser_params" foomaticid="PCPI-1030" /> - <printer translate="name" name="Panasonic KX-P4410" driver="panasonic-kx-p4410" manufacturer="Panasonic" model="2" parameters="pcl_laser_params" foomaticid="Panasonic-KX-P4410" /> - <printer translate="name" name="Panasonic KX-P4450" driver="panasonic-kx-p4450" manufacturer="Panasonic" model="3" parameters="pcl_laser_params" foomaticid="Panasonic-KX-P4450" /> - <printer translate="name" name="Panasonic KX-P6150" driver="panasonic-kx-p6150" manufacturer="Panasonic" model="2" parameters="pcl_laser_params" foomaticid="Panasonic-KX-P6150" /> - <printer translate="name" name="Panasonic KX-P6500" deviceid="MFG:Panasonic;MDL:KX-P6500;DES:(no such line for this device);CMD:GDI;" driver="panasonic-kx-p6500" manufacturer="Panasonic" model="2" parameters="pcl_laser_params" foomaticid="Panasonic-KX-P6500" /> - <printer translate="name" name="Raven LP-410" driver="raven-lp-410" manufacturer="Raven" model="2" parameters="pcl_laser_params" foomaticid="Raven-LP-410" /> - <printer translate="name" name="Ricoh Aficio 1022" driver="ricoh-afc_1022" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_1022" /> - <printer translate="name" name="Ricoh Aficio 1027" driver="ricoh-afc_1027" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_1027" /> - <printer translate="name" name="Ricoh Aficio 1032" driver="ricoh-afc_1032" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_1032" /> - <printer translate="name" name="Ricoh Aficio 1035" driver="ricoh-afc_1035" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_1035" /> - <printer translate="name" name="Ricoh Aficio 1045" driver="ricoh-afc_1045" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_1045" /> - <printer translate="name" name="Ricoh Aficio 1060" driver="ricoh-afc_1060" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_1060" /> - <printer translate="name" name="Ricoh Aficio 1075" driver="ricoh-afc_1075" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_1075" /> - <printer translate="name" name="Ricoh Aficio 1515" driver="ricoh-afc_1515" manufacturer="Ricoh" model="6" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_1515" /> - <printer translate="name" name="Ricoh Aficio 2015" driver="ricoh-afc_2015" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_2015" /> - <printer translate="name" name="Ricoh Aficio 2016" driver="ricoh-afc_2016" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_2016" /> - <printer translate="name" name="Ricoh Aficio 2018" driver="ricoh-afc_2018" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_2018" /> - <printer translate="name" name="Ricoh Aficio 2018D" driver="ricoh-afc_2018d" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_2018D" /> - <printer translate="name" name="Ricoh Aficio 2020" driver="ricoh-afc_2020" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_2020" /> - <printer translate="name" name="Ricoh Aficio 2020D" driver="ricoh-afc_2020d" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_2020D" /> - <printer translate="name" name="Ricoh Aficio 2022" driver="ricoh-afc_2022" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_2022" /> - <printer translate="name" name="Ricoh Aficio 2027" driver="ricoh-afc_2027" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_2027" /> - <printer translate="name" name="Ricoh Aficio 2032" driver="ricoh-afc_2032" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_2032" /> - <printer translate="name" name="Ricoh Aficio 2035" driver="ricoh-afc_2035" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_2035" /> - <printer translate="name" name="Ricoh Aficio 2035e" driver="ricoh-afc_2035e" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_2035e" /> - <printer translate="name" name="Ricoh Aficio 2045" driver="ricoh-afc_2045" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_2045" /> - <printer translate="name" name="Ricoh Aficio 2045e" driver="ricoh-afc_2045e" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_2045e" /> - <printer translate="name" name="Ricoh Aficio 2051" driver="ricoh-afc_2051" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_2051" /> - <printer translate="name" name="Ricoh Aficio 2060" driver="ricoh-afc_2060" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_2060" /> - <printer translate="name" name="Ricoh Aficio 2075" driver="ricoh-afc_2075" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_2075" /> - <printer translate="name" name="Ricoh Aficio 2090" driver="ricoh-afc_2090" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_2090" /> - <printer translate="name" name="Ricoh Aficio 2105" driver="ricoh-afc_2105" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_2105" /> - <printer translate="name" name="Ricoh Aficio 220" driver="ricoh-afc_220" manufacturer="Ricoh" model="6" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_220" /> - <printer translate="name" name="Ricoh Aficio 3025" driver="ricoh-afc_3025" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_3025" /> - <printer translate="name" name="Ricoh Aficio 3030" driver="ricoh-afc_3030" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_3030" /> - <printer translate="name" name="Ricoh Aficio 3035" driver="ricoh-afc_3035" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_3035" /> - <printer translate="name" name="Ricoh Aficio 3045" driver="ricoh-afc_3045" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_3045" /> - <printer translate="name" name="Ricoh Aficio 401" driver="ricoh-afc_401" manufacturer="Ricoh" model="6" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_401" /> - <printer translate="name" name="Ricoh Aficio 700" driver="ricoh-afc_700" manufacturer="Ricoh" model="6" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_700" /> - <printer translate="name" name="Ricoh Aficio MP 1100" driver="ricoh-afc_mp_1100" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_1100" /> - <printer translate="name" name="Ricoh Aficio MP 1350" driver="ricoh-afc_mp_1350" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_1350" /> - <printer translate="name" name="Ricoh Aficio MP 1600" driver="ricoh-afc_mp_1600" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_1600" /> - <printer translate="name" name="Ricoh Aficio MP 161" driver="ricoh-afc_mp_161" manufacturer="Ricoh" model="6" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_161" /> - <printer translate="name" name="Ricoh Aficio MP 2000" driver="ricoh-afc_mp_2000" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_2000" /> - <printer translate="name" name="Ricoh Aficio MP 2500" driver="ricoh-afc_mp_2500" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_2500" /> - <printer translate="name" name="Ricoh Aficio MP 2510" driver="ricoh-afc_mp_2510" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_2510" /> - <printer translate="name" name="Ricoh Aficio MP 2550" driver="ricoh-afc_mp_2550" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_2550" /> - <printer translate="name" name="Ricoh Aficio MP 2550B" driver="ricoh-afc_mp_2550b" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_2550B" /> - <printer translate="name" name="Ricoh Aficio MP 3010" driver="ricoh-afc_mp_3010" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_3010" /> - <printer translate="name" name="Ricoh Aficio MP 3350" driver="ricoh-afc_mp_3350" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_3350" /> - <printer translate="name" name="Ricoh Aficio MP 3350B" driver="ricoh-afc_mp_3350b" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_3350B" /> - <printer translate="name" name="Ricoh Aficio MP 3500" driver="ricoh-afc_mp_3500" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_3500" /> - <printer translate="name" name="Ricoh Aficio MP 4000" driver="ricoh-afc_mp_4000" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_4000" /> - <printer translate="name" name="Ricoh Aficio MP 4000B" driver="ricoh-afc_mp_4000b" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_4000B" /> - <printer translate="name" name="Ricoh Aficio MP 4500" driver="ricoh-afc_mp_4500" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_4500" /> - <printer translate="name" name="Ricoh Aficio MP 5000" driver="ricoh-afc_mp_5000" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_5000" /> - <printer translate="name" name="Ricoh Aficio MP 5000B" driver="ricoh-afc_mp_5000b" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_5000B" /> - <printer translate="name" name="Ricoh Aficio MP 5500" driver="ricoh-afc_mp_5500" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_5500" /> - <printer translate="name" name="Ricoh Aficio MP 6500" driver="ricoh-afc_mp_6500" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_6500" /> - <printer translate="name" name="Ricoh Aficio MP 7500" driver="ricoh-afc_mp_7500" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_7500" /> - <printer translate="name" name="Ricoh Aficio MP 9000" driver="ricoh-afc_mp_9000" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" foomaticid="Ricoh-Aficio_MP_9000" /> - <printer translate="name" name="Samsung ML-85" driver="samsung-ml-85" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-85" /> - <printer translate="name" name="Samsung ML-1250" driver="samsung-ml-1250" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-1250" /> - <printer translate="name" name="Samsung ML-1450" deviceid="MFG:Samsung;MDL:ML-1450;" driver="samsung-ml-1450" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-1450" /> - <printer translate="name" name="Samsung ML-1450PS" driver="samsung-ml-1450ps" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-1450PS" /> - <printer translate="name" name="Samsung ML-1650" deviceid="MFG:Samsung;MDL:ML-1650;CMD:PCL5E,PCL6;" driver="samsung-ml-1650" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-1650" /> - <printer translate="name" name="Samsung ML-1651N" driver="samsung-ml-1651n" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-1651N" /> - <printer translate="name" name="Samsung ML-1750" driver="samsung-ml-1750" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-1750" /> - <printer translate="name" name="Samsung ML-2150" driver="samsung-ml-2150" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-2150" /> - <printer translate="name" name="Samsung ML-2150PS" driver="samsung-ml-2150ps" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-2150PS" /> - <printer translate="name" name="Samsung ML-2151N" driver="samsung-ml-2151n" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-2151N" /> - <printer translate="name" name="Samsung ML-2151NPS" driver="samsung-ml-2151nps" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-2151NPS" /> - <printer translate="name" name="Samsung ML-2152W" driver="samsung-ml-2152w" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-2152W" /> - <printer translate="name" name="Samsung ML-2152WPS" driver="samsung-ml-2152wps" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-2152WPS" /> - <printer translate="name" name="Samsung ML-2250" driver="samsung-ml-2250" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-2250" /> - <printer translate="name" name="Samsung ML-2550" driver="samsung-ml-2550" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-2550" /> - <printer translate="name" name="Samsung ML-2551N" driver="samsung-ml-2551n" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-2551N" /> - <printer translate="name" name="Samsung ML-2552W" driver="samsung-ml-2552w" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-2552W" /> - <printer translate="name" name="Samsung ML-4600" driver="samsung-ml-4600" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-4600" /> - <printer translate="name" name="Samsung ML-5000a" driver="samsung-ml-5000a" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-5000a" /> - <printer translate="name" name="Samsung ML-6000" driver="samsung-ml-6000" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-6000" /> - <printer translate="name" name="Samsung ML-6100" driver="samsung-ml-6100" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-6100" /> - <printer translate="name" name="Samsung ML-7000" driver="samsung-ml-7000" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-7000" /> - <printer translate="name" name="Samsung ML-7000N" driver="samsung-ml-7000n" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-7000N" /> - <printer translate="name" name="Samsung ML-7000P" driver="samsung-ml-7000p" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-7000P" /> - <printer translate="name" name="Samsung ML-7050" driver="samsung-ml-7050" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-7050" /> - <printer translate="name" name="Samsung ML-7300" driver="samsung-ml-7300" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-7300" /> - <printer translate="name" name="Samsung ML-7300N" driver="samsung-ml-7300n" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-ML-7300N" /> - <printer translate="name" name="Samsung QL-5100A" driver="samsung-ql-5100a" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-QL-5100A" /> - <printer translate="name" name="Samsung QL-6050" deviceid="MFG:Samsung;MDL:6050;CMD:PCL6;" driver="samsung-ql-6050" manufacturer="Samsung" model="6" parameters="pcl_laser_params" foomaticid="Samsung-QL-6050" /> - <printer translate="name" name="Savin 2522" driver="savin-2522" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-2522" /> - <printer translate="name" name="Savin 2527" driver="savin-2527" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-2527" /> - <printer translate="name" name="Savin 2532" driver="savin-2532" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-2532" /> - <printer translate="name" name="Savin 2535/2235" driver="savin-2235" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-2535_2235" /> - <printer translate="name" name="Savin 2545/2245" driver="savin-2245" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-2545_2245" /> - <printer translate="name" name="Savin 2560" driver="savin-2560" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-2560" /> - <printer translate="name" name="Savin 2575" driver="savin-2575" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-2575" /> - <printer translate="name" name="Savin 3515" driver="savin-3515" manufacturer="Savin" model="6" parameters="pcl_laser_params" foomaticid="Savin-3515" /> - <printer translate="name" name="Savin 40105" driver="savin-40105" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-40105" /> - <printer translate="name" name="Savin 4015" driver="savin-4015" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-4015" /> - <printer translate="name" name="Savin 4018" driver="savin-4018" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-4018" /> - <printer translate="name" name="Savin 4018d" driver="savin-4018d" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-4018d" /> - <printer translate="name" name="Savin 4022" driver="savin-4022" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-4022" /> - <printer translate="name" name="Savin 4027" driver="savin-4027" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-4027" /> - <printer translate="name" name="Savin 4035/4135g" driver="savin-4135g" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-4035_4135g" /> - <printer translate="name" name="Savin 4035e/4135eG" driver="savin-4135eg" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-4035e_4135eG" /> - <printer translate="name" name="Savin 4045/4145g" driver="savin-4145g" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-4045_4145g" /> - <printer translate="name" name="Savin 4045e/4145eG" driver="savin-4145eg" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-4045e_4145eG" /> - <printer translate="name" name="Savin 4051" driver="savin-4051" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-4051" /> - <printer translate="name" name="Savin 4060" driver="savin-4060" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-4060" /> - <printer translate="name" name="Savin 4075" driver="savin-4075" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-4075" /> - <printer translate="name" name="Savin 4090" driver="savin-4090" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-4090" /> - <printer translate="name" name="Savin 7025" driver="savin-7025" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-7025" /> - <printer translate="name" name="Savin 8016" driver="savin-8016" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-8016" /> - <printer translate="name" name="Savin 8020" driver="savin-8020" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-8020" /> - <printer translate="name" name="Savin 8020d" driver="savin-8020d" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-8020d" /> - <printer translate="name" name="Savin 8025" driver="savin-8025" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-8025" /> - <printer translate="name" name="Savin 8025e" driver="savin-8025e" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-8025e" /> - <printer translate="name" name="Savin 8030" driver="savin-8030" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-8030" /> - <printer translate="name" name="Savin 8030e" driver="savin-8030e" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-8030e" /> - <printer translate="name" name="Savin 8035/8035g" driver="savin-8035g" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-8035_8035g" /> - <printer translate="name" name="Savin 8035e" driver="savin-8035e" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-8035e" /> - <printer translate="name" name="Savin 8045/8045g" driver="savin-8045g" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-8045_8045g" /> - <printer translate="name" name="Savin 8045e" driver="savin-8045e" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-8045e" /> - <printer translate="name" name="Savin 8055" driver="savin-8055" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-8055" /> - <printer translate="name" name="Savin 8065" driver="savin-8065" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-8065" /> - <printer translate="name" name="Savin 8075" driver="savin-8075" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-8075" /> - <printer translate="name" name="Savin 8090" driver="savin-8090" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-8090" /> - <printer translate="name" name="Savin 8110" driver="savin-8110" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-8110" /> - <printer translate="name" name="Savin 8135" driver="savin-8135" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-8135" /> - <printer translate="name" name="Savin 816" driver="savin-816" manufacturer="Savin" model="6" parameters="pcl_laser_params" foomaticid="Savin-816" /> - <printer translate="name" name="Savin 9016" driver="savin-9016" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-9016" /> - <printer translate="name" name="Savin 9021d" driver="savin-9021d" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-9021d" /> - <printer translate="name" name="Savin 9025" driver="savin-9025" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-9025" /> - <printer translate="name" name="Savin 9025b" driver="savin-9025b" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-9025b" /> - <printer translate="name" name="Savin 9033" driver="savin-9033" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-9033" /> - <printer translate="name" name="Savin 9033b" driver="savin-9033b" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-9033b" /> - <printer translate="name" name="Savin 9040" driver="savin-9040" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-9040" /> - <printer translate="name" name="Savin 9040b" driver="savin-9040b" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-9040b" /> - <printer translate="name" name="Savin 9050" driver="savin-9050" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-9050" /> - <printer translate="name" name="Savin 9050b" driver="savin-9050b" manufacturer="Savin" model="61" parameters="pcl_laser_params" foomaticid="Savin-9050b" /> - <printer translate="name" name="Seiko SpeedJET 200" driver="seiko-sj_200" manufacturer="Seiko" model="2" parameters="pcl_laser_params" foomaticid="Seiko-SpeedJET_200" /> - <printer translate="name" name="Sharp AR-161" deviceid="MFG:SHARP;MDL:AR-160/200 series;DES:None;CMD:PCL;" driver="sharp-ar-161" manufacturer="Sharp" model="6" parameters="pcl_laser_params" foomaticid="Sharp-AR-161" /> - <printer translate="name" name="Sharp AR-M257" driver="sharp-ar-m257" manufacturer="Sharp" model="6" parameters="pcl_laser_params" foomaticid="Sharp-AR-M257" /> - <printer translate="name" name="Sony IJP-V100" deviceid="MFG:Sony;MDL:All-in-One IJP-V100;CMD:MLC,PCL,PML;" driver="sony-ijp-v100" manufacturer="Sony" model="601" parameters="pcl_inkjet_params" foomaticid="Sony-IJP-V100" /> - <printer translate="name" name="Star LS-04" driver="star-ls-04" manufacturer="Star" model="2" parameters="pcl_laser_params" foomaticid="Star-LS-04" /> - <printer translate="name" name="Star LaserPrinter 8" driver="star-lp_8" manufacturer="Star" model="2" parameters="pcl_laser_params" foomaticid="Star-LaserPrinter_8" /> - <printer translate="name" name="Tally MT908" driver="tally-mt908" manufacturer="Tally" model="3" parameters="pcl_laser_params" foomaticid="Tally-MT908" /> - <printer translate="name" name="Tektronix Phaser 750DP" driver="tektronix-phaser_750dp" manufacturer="Tektronix" model="6" parameters="pcl_laser_params" foomaticid="Tektronix-Phaser_750DP" /> - <printer translate="name" name="Tektronix Phaser 750DX" driver="tektronix-phaser_750dx" manufacturer="Tektronix" model="6" parameters="pcl_laser_params" foomaticid="Tektronix-Phaser_750DX" /> - <printer translate="name" name="Tektronix Phaser 750N" driver="tektronix-phaser_750n" manufacturer="Tektronix" model="6" parameters="pcl_laser_params" foomaticid="Tektronix-Phaser_750N" /> - <printer translate="name" name="Tektronix Phaser 750P" driver="tektronix-phaser_750p" manufacturer="Tektronix" model="6" parameters="pcl_laser_params" foomaticid="Tektronix-Phaser_750P" /> - <printer translate="name" name="Xerox Able 1406" driver="xerox-able_1406" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Able_1406" /> - <printer translate="name" name="Xerox DocuPrint 4508" driver="xerox-dp_4508" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-DocuPrint_4508" /> - <printer translate="name" name="Xerox DocuPrint C20" driver="xerox-dp_c20" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-DocuPrint_C20" /> - <printer translate="name" name="Xerox DocuPrint N4512" driver="xerox-dp_n4512" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-DocuPrint_N4512" /> - <printer translate="name" name="Xerox DocuPrint N4512PS" driver="xerox-dp_n4512ps" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-DocuPrint_N4512PS" /> - <printer translate="name" name="Xerox DocuPrint P12" deviceid="MFG:XEROX;MDL:DocuPrint P12;DES:Xerox DocuPrint P12;CMD:PrintGear,PCL,PJL;" driver="xerox-dp_p12" manufacturer="Xerox" model="2" parameters="pcl_laser_params" foomaticid="Xerox-DocuPrint_P12" /> - <printer translate="name" name="Xerox DocuPrint P1202" deviceid="MFG:Xerox;MDL:DocuPrint;CMD:PCL5E;" driver="xerox-dp_p1202" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-DocuPrint_P1202" /> - <printer translate="name" name="Xerox DocuPrint P8e" deviceid="MFG:Xerox;MDL:DocuPrint P8e;CMD:PCL5E2;" driver="xerox-dp_p8e" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-DocuPrint_P8e" /> - <printer translate="name" name="Xerox Document Centre 400" driver="xerox-dc_400" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Document_Centre_400" /> - <printer translate="name" name="Xerox Phaser 2135" driver="xerox-phaser_2135" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_2135" /> - <printer translate="name" name="Xerox Phaser 4400B" driver="xerox-phaser_4400b" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_4400B" /> - <printer translate="name" name="Xerox Phaser 4400DT" driver="xerox-phaser_4400dt" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_4400DT" /> - <printer translate="name" name="Xerox Phaser 4400DX" driver="xerox-phaser_4400dx" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_4400DX" /> - <printer translate="name" name="Xerox Phaser 4400N" driver="xerox-phaser_4400n" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_4400N" /> - <printer translate="name" name="Xerox Phaser 4500B" driver="xerox-phaser_4500b" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_4500B" /> - <printer translate="name" name="Xerox Phaser 4500DT" driver="xerox-phaser_4500dt" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_4500DT" /> - <printer translate="name" name="Xerox Phaser 4500DX" driver="xerox-phaser_4500dx" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_4500DX" /> - <printer translate="name" name="Xerox Phaser 4500N" driver="xerox-phaser_4500n" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_4500N" /> - <printer translate="name" name="Xerox Phaser 4510B" driver="xerox-phaser_4510b" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_4510B" /> - <printer translate="name" name="Xerox Phaser 4510DT" driver="xerox-phaser_4510dt" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_4510DT" /> - <printer translate="name" name="Xerox Phaser 4510DX" driver="xerox-phaser_4510dx" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_4510DX" /> - <printer translate="name" name="Xerox Phaser 4510N" driver="xerox-phaser_4510n" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_4510N" /> - <printer translate="name" name="Xerox Phaser 5500B" driver="xerox-phaser_5500b" manufacturer="Xerox" model="64" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_5500B" /> - <printer translate="name" name="Xerox Phaser 5500DN" driver="xerox-phaser_5500dn" manufacturer="Xerox" model="64" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_5500DN" /> - <printer translate="name" name="Xerox Phaser 5500DT" driver="xerox-phaser_5500dt" manufacturer="Xerox" model="64" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_5500DT" /> - <printer translate="name" name="Xerox Phaser 5500DX" driver="xerox-phaser_5500dx" manufacturer="Xerox" model="64" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_5500DX" /> - <printer translate="name" name="Xerox Phaser 5500N" driver="xerox-phaser_5500n" manufacturer="Xerox" model="64" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_5500N" /> - <printer translate="name" name="Xerox Phaser 6130N" driver="xerox-phaser_6130n" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_6130N" /> - <printer translate="name" name="Xerox Phaser 6180DN" driver="xerox-phaser_6180dn" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_6180DN" /> - <printer translate="name" name="Xerox Phaser 6180MFP-D" driver="xerox-phaser_6180mfp-d" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_6180MFP-D" /> - <printer translate="name" name="Xerox Phaser 6200B" driver="xerox-phaser_6200b" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_6200B" /> - <printer translate="name" name="Xerox Phaser 6200DP" driver="xerox-phaser_6200dp" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_6200DP" /> - <printer translate="name" name="Xerox Phaser 6200DX" driver="xerox-phaser_6200dx" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_6200DX" /> - <printer translate="name" name="Xerox Phaser 6200N" driver="xerox-phaser_6200n" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_6200N" /> - <printer translate="name" name="Xerox Phaser 6250B" driver="xerox-phaser_6250b" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_6250B" /> - <printer translate="name" name="Xerox Phaser 6250DP" driver="xerox-phaser_6250dp" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_6250DP" /> - <printer translate="name" name="Xerox Phaser 6250DT" driver="xerox-phaser_6250dt" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_6250DT" /> - <printer translate="name" name="Xerox Phaser 6250DX" driver="xerox-phaser_6250dx" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_6250DX" /> - <printer translate="name" name="Xerox Phaser 6250N" driver="xerox-phaser_6250n" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_6250N" /> - <printer translate="name" name="Xerox Phaser 6300DN" driver="xerox-phaser_6300dn" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_6300DN" /> - <printer translate="name" name="Xerox Phaser 6300N" driver="xerox-phaser_6300n" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_6300N" /> - <printer translate="name" name="Xerox Phaser 6350DP" driver="xerox-phaser_6350dp" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_6350DP" /> - <printer translate="name" name="Xerox Phaser 6350DT" driver="xerox-phaser_6350dt" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_6350DT" /> - <printer translate="name" name="Xerox Phaser 6350DX" driver="xerox-phaser_6350dx" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_6350DX" /> - <printer translate="name" name="Xerox Phaser 6360DN" driver="xerox-phaser_6360dn" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_6360DN" /> - <printer translate="name" name="Xerox Phaser 6360DX" driver="xerox-phaser_6360dx" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_6360DX" /> - <printer translate="name" name="Xerox Phaser 7300B" driver="xerox-phaser_7300b" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7300B" /> - <printer translate="name" name="Xerox Phaser 7300DN" driver="xerox-phaser_7300dn" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7300DN" /> - <printer translate="name" name="Xerox Phaser 7300DT" driver="xerox-phaser_7300dt" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7300DT" /> - <printer translate="name" name="Xerox Phaser 7300DX" driver="xerox-phaser_7300dx" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7300DX" /> - <printer translate="name" name="Xerox Phaser 7300N" driver="xerox-phaser_7300n" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7300N" /> - <printer translate="name" name="Xerox Phaser 7400DN" driver="xerox-phaser_7400dn" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7400DN" /> - <printer translate="name" name="Xerox Phaser 7400DT" driver="xerox-phaser_7400dt" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7400DT" /> - <printer translate="name" name="Xerox Phaser 7400DX" driver="xerox-phaser_7400dx" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7400DX" /> - <printer translate="name" name="Xerox Phaser 7400DXF" driver="xerox-phaser_7400dxf" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7400DXF" /> - <printer translate="name" name="Xerox Phaser 7400N" driver="xerox-phaser_7400n" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7400N" /> - <printer translate="name" name="Xerox Phaser 7700DN" driver="xerox-phaser_7700dn" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7700DN" /> - <printer translate="name" name="Xerox Phaser 7700DX" driver="xerox-phaser_7700dx" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7700DX" /> - <printer translate="name" name="Xerox Phaser 7700GX" driver="xerox-phaser_7700gx" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7700GX" /> - <printer translate="name" name="Xerox Phaser 7750B" driver="xerox-phaser_7750b" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7750B" /> - <printer translate="name" name="Xerox Phaser 7750DN" driver="xerox-phaser_7750dn" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7750DN" /> - <printer translate="name" name="Xerox Phaser 7750DXF" driver="xerox-phaser_7750dxf" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7750DXF" /> - <printer translate="name" name="Xerox Phaser 7750GX" driver="xerox-phaser_7750gx" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7750GX" /> - <printer translate="name" name="Xerox Phaser 7760DN" driver="xerox-phaser_7760dn" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7760DN" /> - <printer translate="name" name="Xerox Phaser 7760DX" driver="xerox-phaser_7760dx" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7760DX" /> - <printer translate="name" name="Xerox Phaser 7760GX" driver="xerox-phaser_7760gx" manufacturer="Xerox" model="63" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_7760GX" /> - <printer translate="name" name="Xerox Phaser 8400B" driver="xerox-phaser_8400b" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_8400B" /> - <printer translate="name" name="Xerox Phaser 8400BD" driver="xerox-phaser_8400bd" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_8400BD" /> - <printer translate="name" name="Xerox Phaser 8400DP" driver="xerox-phaser_8400dp" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_8400DP" /> - <printer translate="name" name="Xerox Phaser 8400DX" driver="xerox-phaser_8400dx" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_8400DX" /> - <printer translate="name" name="Xerox Phaser 8400N" driver="xerox-phaser_8400n" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_8400N" /> - <printer translate="name" name="Xerox Phaser 8500DN" driver="xerox-phaser_8500dn" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_8500DN" /> - <printer translate="name" name="Xerox Phaser 8500N" driver="xerox-phaser_8500n" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_8500N" /> - <printer translate="name" name="Xerox Phaser 8550DP" driver="xerox-phaser_8550dp" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_8550DP" /> - <printer translate="name" name="Xerox Phaser 8550DT" driver="xerox-phaser_8550dt" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_8550DT" /> - <printer translate="name" name="Xerox Phaser 8550DX" driver="xerox-phaser_8550dx" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_8550DX" /> - <printer translate="name" name="Xerox Phaser 8560DN" driver="xerox-phaser_8560dn" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-Phaser_8560DN" /> - <printer translate="name" name="Xerox WorkCentre 7345" driver="xerox-workcentre_7345" manufacturer="Xerox" model="6" parameters="pcl_laser_params" foomaticid="Xerox-WorkCentre_7345" /> - <printer translate="name" name="Xerox WorkCentre M118" deviceid="MFG:XEROX;MDL:WorkCentre M118;DES:XEROX WorkCentre M118;" driver="xerox-wc_m118" manufacturer="Xerox" model="61" parameters="pcl_laser_params" foomaticid="Xerox-Work_Centre_M118" /> + <printer translate="name" name="Brother HL-2060" driver="brother-hl-2060" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-2250DN" driver="brother-hl-2250dn" manufacturer="Brother" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-2460" deviceid="MFG:Brother;MDL:Brother HL-2460 series;" driver="brother-hl-2460" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-2460N" driver="brother-hl-2460n" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-4Ve" driver="brother-hl-4ve" manufacturer="Brother" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-5030" driver="brother-hl-5030" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-5040" deviceid="MFG:Brother;MDL:HL-5040 series;CMD:PJL,PCL,PCLXL;" driver="brother-hl-5040" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-5050" deviceid="MFG:Brother;MDL:Brother HL-5050 series;" driver="brother-hl-5050" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-5070N" deviceid="MFG:Brother;MDL:Brother HL-5070N series;" driver="brother-hl-5070n" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-5140" deviceid="MFG:Brother;MDL:HL-5140 series;CMD:PJL,PCL,PCLXL;" driver="brother-hl-5140" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-5150D" deviceid="MFG:Brother;MDL:Brother HL-5150D series;CMD:PJL,PCL,PCLXL,POSTSCRIPT;" driver="brother-hl-5150d" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-5170DN" deviceid="MFG:Brother;MDL:Brother HL-5170DN series;CMD:PJL,PCL,PCLXL,POSTSCRIPT;" driver="brother-hl-5170dn" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-630" driver="brother-hl-630" manufacturer="Brother" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-660" driver="brother-hl-660" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-7050" deviceid="MFG:Brother;MDL:Brother HL-7050 series;" driver="brother-hl-7050" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-7050N" driver="brother-hl-7050n" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-760" driver="brother-hl-760" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother HL-960" driver="brother-hl-960" manufacturer="Brother" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother MFC-6550MC" driver="brother-mfc-6550mc" manufacturer="Brother" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother MFC-8300" driver="brother-mfc-8300" manufacturer="Brother" model="3" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother MFC-9500" driver="brother-mfc-9500" manufacturer="Brother" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Brother MFC-9600" driver="brother-mfc-9600" manufacturer="Brother" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Canon GP 335" driver="canon-gp_335" manufacturer="Canon" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Canon LBP-4sx" driver="canon-lbp-4sx" manufacturer="Canon" model="3" parameters="pcl_laser_params" /> + <printer translate="name" name="Canon LBP-430" driver="canon-lbp-430" manufacturer="Canon" model="4" parameters="pcl_laser_params" /> + <printer translate="name" name="Canon LBP-1000" deviceid="MFG:Canon;MDL:LBP-1000;DES:LBP-1000;CMD:PCL-XL;" driver="canon-lbp-1000" manufacturer="Canon" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Canon LBP-1260" driver="canon-lbp-1260" manufacturer="Canon" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Canon LBP-1760" driver="canon-lbp-1760" manufacturer="Canon" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Canon LBP-3360" driver="canon-lbp-3360" manufacturer="Canon" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Canon imageRunner 330s" driver="canon-ir_330s" manufacturer="Canon" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Citizen ProJet II" driver="citizen-projet_ii" manufacturer="Citizen" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Datamax-ONeil p1115" deviceid="MFG:DatamaxOneil_;MDL:p1115;" color="false" driver="datamax_oneil_p1115" manufacturer="DatamaxONeil" model="10010" parameters="pcl_laser_params" /> + <printer translate="name" name="Datamax-ONeil p1115s" deviceid="MFG:DatamaxOneil_;MDL:p1115s;" color="false" driver="datamax_oneil_p1115s" manufacturer="DatamaxONeil" model="10011" parameters="pcl_laser_params" /> + <printer translate="name" name="Datamax-ONeil p1120n" deviceid="MFG:DatamaxOneil_;MDL:p1120n;" color="false" driver="datamax_oneil_p1120n" manufacturer="DatamaxONeil" model="10012" parameters="pcl_laser_params" /> + <printer translate="name" name="Datamax-ONeil p1125" deviceid="MFG:DatamaxOneil_;MDL:p1125;" color="false" driver="datamax_oneil_p1125" manufacturer="DatamaxONeil" model="10013" parameters="pcl_laser_params" /> + <printer translate="name" name="Datamax-ONeil p1725" deviceid="MFG:DatamaxOneil_;MDL:p1725;" color="false" driver="datamax_oneil_p1725" manufacturer="DatamaxONeil" model="10014" parameters="pcl_laser_params" /> + <printer translate="name" name="Datamax-ONeil w1110" deviceid="MFG:DatamaxOneil_;MDL:w1110;" color="false" driver="datamax_oneil_w1110" manufacturer="DatamaxONeil" model="10015" parameters="pcl_laser_params" /> + <printer translate="name" name="Datamax-ONeil H8308p" deviceid="MFG:DatamaxOneil_;MDL:H8308p;" color="false" driver="datamax_oneil_H8308p" manufacturer="DatamaxONeil" model="10016" parameters="pcl_laser_params" /> + <printer translate="name" name="DEC 1800" driver="dec-1800" manufacturer="DEC" model="3" parameters="pcl_laser_params" /> + <printer translate="name" name="DEC LN17" driver="dec-ln17" manufacturer="DEC" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson ActionLaser 1100" driver="epson-actl_1100" manufacturer="Epson" model="3" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson ActionLaser II" driver="epson-actl_ii" manufacturer="Epson" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson AL-C2000" driver="epson-acl_c2000" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson AL-C2000 PS3" deviceid="MFG:Epson;MDL:AL-C2000 PS3;" driver="epson-acl_c2000ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson AL-C8500" driver="epson-acl_c8500" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson AL-C8500PS" driver="epson-acl_c8500ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson AL-C8600" driver="epson-acl_c8600" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson AL-C8600 PS3" deviceid="MFG:Epson;MDL:AL-C8600 PS3;" driver="epson-acl_c8600ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-5200" driver="epson-epl-5200" manufacturer="Epson" model="3" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-5200+" driver="epson-epl-5200plus" manufacturer="Epson" model="3" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-5700" deviceid="MFG:EPSON;MDL:EPL-5700;DES:EPSON EPL-5700;CMD:PJL,EJL,ESCPL2-00,ESCP9-84,PRPXL24-01,HP ENHANCED PCL5,HPGL2-01,;" driver="epson-epl-5700" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-5700PS" driver="epson-epl-5700ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-5800" driver="epson-epl-5800" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-5800PS" driver="epson-epl-5800ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-5900" driver="epson-epl-5900" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-5900 PS3" deviceid="MFG:Epson;MDL:EPL-5900 PS3;" driver="epson-epl-5900ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-6100" driver="epson-epl-6100" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-6100 PS3" deviceid="MFG:Epson;MDL:EPL-6100 PS3;" driver="epson-epl-6100ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-7100" driver="epson-epl-7100" manufacturer="Epson" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-N2050" driver="epson-epl-n2050" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-N2050+" driver="epson-epl-n2050plus" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-N2050PS" driver="epson-epl-n2050ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-N2050PS+" driver="epson-epl-n2050psplus" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-N2120" driver="epson-epl-n2120" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-N2500" driver="epson-epl-n2500" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-N2500 PS3" deviceid="MFG:Epson;MDL:EPL-N2500 PS3;" driver="epson-epl-n2500ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-N2750" driver="epson-epl-n2750" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Epson EPL-N2750PS" driver="epson-epl-n2750ps" manufacturer="Epson" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Fujitsu PrintPartner 10V" driver="fujitsu-pp_10v" manufacturer="Fujitsu" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Fujitsu PrintPartner 16DV" driver="fujitsu-pp_16dv" manufacturer="Fujitsu" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Fujitsu PrintPartner 20W" driver="fujitsu-pp_20w" manufacturer="Fujitsu" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Fujitsu PrintPartner 8000" driver="fujitsu-pp_8000" manufacturer="Fujitsu" model="3" parameters="pcl_laser_params" /> + <printer translate="name" name="Generic PCL 4 Printer" driver="pcl-g_4" manufacturer="Generic" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Generic PCL 4 Printer wide margin" driver="pcl-g_4_a4" manufacturer="Generic" model="22" parameters="pcl_laser_params" /> + <printer translate="name" name="Generic PCL 4 LF Printer" driver="pcl-g_4_l" manufacturer="Generic" model="23" parameters="pcl_laser_params" /> + <printer translate="name" name="Generic PCL 5 Printer" driver="pcl-g_5" manufacturer="Generic" model="3" parameters="pcl_laser_params" /> + <printer translate="name" name="Generic PCL 5 Printer wide margin" driver="pcl-g_5_a4" manufacturer="Generic" model="32" parameters="pcl_laser_params" /> + <printer translate="name" name="Generic PCL 5 LF Printer" driver="pcl-g_5_l" manufacturer="Generic" model="33" parameters="pcl_laser_params" /> + <printer translate="name" name="Generic PCL 5c Printer" driver="pcl-g_5c" manufacturer="Generic" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Generic PCL 5c LF Printer" driver="pcl-g_5c_l" manufacturer="Generic" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Generic PCL 5e Printer" driver="pcl-g_5e" manufacturer="Generic" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Generic PCL 5e LF Printer" driver="pcl-g_5e_l" manufacturer="Generic" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Generic PCL 6/PCL XL Printer" driver="pcl-g_6" manufacturer="Generic" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Generic PCL 6/PCL XL LF Printer" driver="pcl-g_6_l" manufacturer="Generic" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Generic PCL 6 Printer wide margin" driver="pcl-g_6_a4" manufacturer="Generic" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Generic PCL 6 LF Printer wide margin" driver="pcl-g_6_lf_a4" manufacturer="Generic" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Generic PCL 6 Tabl Printer wide margin" driver="pcl-g_6_tabloid_a4" manufacturer="Generic" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner 10512" driver="gestetner-10512" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner 2212" driver="gestetner-2212" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner 2712" driver="gestetner-2712" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner 3212" driver="gestetner-3212" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner 3502" driver="gestetner-3502" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner 3532/4235g" driver="gestetner-4235g" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner 4502" driver="gestetner-4502" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner 4532/4245g" driver="gestetner-4245g" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner 6002" driver="gestetner-6002" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner 7502" driver="gestetner-7502" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner 9002" driver="gestetner-9002" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner DSm415" driver="gestetner-dsm415" manufacturer="Gestetner" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner DSm615" driver="gestetner-dsm615" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner DSm616" driver="gestetner-dsm616" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner DSm618" driver="gestetner-dsm618" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner DSm618d" driver="gestetner-dsm618d" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner DSm620" driver="gestetner-dsm620" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner DSm620d" driver="gestetner-dsm620d" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner DSm622" driver="gestetner-dsm622" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner DSm627" driver="gestetner-dsm627" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner DSm635/635G" driver="gestetner-dsm635g" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner DSm645/645G" driver="gestetner-ds645g" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner DSm651" driver="gestetner-dsm651" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner DSm660" driver="gestetner-dsm660" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner DSm675" driver="gestetner-dsm675" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner DSm725" driver="gestetner-dsm725" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner DSm730" driver="gestetner-dsm730" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner DSm735/735G" driver="gestetner-dsm735g" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner DSm745/745G" driver="gestetner-dsm745g" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP1100/DSm7110" driver="gestetner-dsm7110" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP1350/DSm7135" driver="gestetner-dsm7135" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP1600/DSm716" driver="gestetner-dsm716" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP2000/DSm721d" driver="gestetner-dsm721d" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP2500/DSm625" driver="gestetner-dsm625" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP3500/DSm735e" driver="gestetner-dsm735e" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP4500/DSm745e" driver="gestetner-dsm745e" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP5500/DSm755" driver="gestetner-dsm755" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP6500/DSm765" driver="gestetner-dsm765" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP7500/DSm775" driver="gestetner-dsm775" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP9000/DSm790" driver="gestetner-dsm790" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP 161/DSm416" driver="gestetner-dsm416" manufacturer="Gestetner" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP 2510/DSm725e" driver="gestetner-dsm725e" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP 2550" driver="gestetner-mp_2550" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP 2550B" driver="gestetner-mp_2550b" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP 3010/DSm730e" driver="gestetner-dsm730e" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP 3350" driver="gestetner-mp_3350" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP 3350B" driver="gestetner-mp_3350b" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP 4000" driver="gestetner-mp_4000" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP 4000B" driver="gestetner-mp_4000b" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP 5000" driver="gestetner-mp_5000" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Gestetner MP 5000B" driver="gestetner-mp_5000b" manufacturer="Gestetner" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="HP Business Inkjet 2200" deviceid="MFG:HEWLETT-PACKARD;MDL:HP BUSINESS INKJET 2200;DES:Hewlett-Packard Business Inkjet 2200;CMD:MLC,PML,PJL;" driver="hp-bij_2200" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP Business Inkjet 2230" deviceid="MFG:HEWLETT-PACKARD;MDL:HP BUSINESS INKJET 2230;DES:Hewlett-Packard Business Inkjet 2230;CMD:MLC,PML,PJL;" driver="hp-bij_2230" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP Business Inkjet 2250" deviceid="MFG:HEWLETT-PACKARD;MDL:HP BUSINESS INKJET 2250;DES:Hewlett-Packard Business Inkjet 2250;CMD:MLC,PML,PJL,PCL5,POSTSCRIPT;" driver="hp-bij_2250" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP Business Inkjet 2250TN" deviceid="MFG:HEWLETT-PACKARD;MDL:HP BUSINESS INKJET 2250;DES:Hewlett-Packard Business Inkjet 2250;CMD:MLC,PML,PJL,PCL5,POSTSCRIPT;" driver="hp-bij_2250tn" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP Business Inkjet 2280" deviceid="MFG:HEWLETT-PACKARD;MDL:HP BUSINESS INKJET 2280;DES:Hewlett-Packard Business Inkjet 2280;CMD:MLC,PML,PJL,PCL5,POSTSCRIPT;" driver="hp-bij_2280" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP Color Inkjet Printer CP1160" driver="hp-cij_cp1160" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP Color Inkjet Printer CP1700" deviceid="MFG:HEWLETT-PACKARD;MDL:HP Color Inkjet CP1700;DES:HP Color Inkjet CP1700;" driver="hp-cij_cp1700" manufacturer="HP" model="901" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP Color LaserJet 2500" deviceid="MFG:Hewlett-Packard;MDL:hp color LaserJet 2500;CMD:PJL,MLC,BIDI-ECP,POSTSCRIPT,PJL,PCLXL,PCL;" driver="hp-clj_2500" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP Color LaserJet 4500" deviceid="MFG:Hewlett-Packard;MDL:LaserJet Color 4500;" driver="hp-clj_4500" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP Color LaserJet 4550" deviceid="MFG:Hewlett-Packard;MDL:HP Color LaserJet 4550 ;DES:Hewlett-Packard Color LaserJet 4550;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL,PJL;" driver="hp-clj_4550" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP Color LaserJet 4600" deviceid="MFG:Hewlett-Packard;MDL:hp color LaserJet 4600;DES:Hewlett-Packard color LaserJet 4600;" driver="hp-clj_4600" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP Color LaserJet 5" driver="hp-clj_5" manufacturer="HP" model="3" parameters="pcl_laser_params" /> + <printer translate="name" name="HP Color LaserJet 5000" driver="hp-clj_5000" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP Color LaserJet 5500" driver="hp-clj_5500" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP Color LaserJet 8550GN" driver="hp-clj_8550gn" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP DesignJet 230" driver="pcl-desnj-230" manufacturer="HP" model="10230" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DesignJet 250C" driver="pcl-desnj-250" manufacturer="HP" model="10250" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DesignJet 430" driver="pcl-desnj-430" manufacturer="HP" model="10230" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DesignJet 450C" driver="pcl-desnj-450" manufacturer="HP" model="10250" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DesignJet 455CA" driver="pcl-desnj-455" manufacturer="HP" model="10250" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DesignJet 488CA" driver="pcl-desnj-488" manufacturer="HP" model="10250" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DesignJet 700" driver="pcl-desnj-700" manufacturer="HP" model="10700" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DesignJet 750C Plus" driver="hp-desnj_750c_plus" manufacturer="HP" model="10750" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DesignJet 750C" driver="pcl-750" manufacturer="HP" model="10750" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DesignJet 2500CP" driver="pcl-desnj-2500" manufacturer="HP" model="12500" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DesignJet 3500CP" driver="pcl-desnj-3500" manufacturer="HP" model="13500" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DesignJet ColorPro CAD" driver="hp-desnj_cp_cad" manufacturer="HP" model="2500" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 400" deviceid="MFG:Hewlett-Packard;MDL:HP DeskJet 400;DES:HP DeskJet 400 Printer;CMD:PCL,C32;" driver="pcl-400" manufacturer="HP" model="400" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 420C" driver="hp-dj_420c" manufacturer="HP" model="540" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 450" deviceid="MFG:hp;MDL:dj450;DES:hp dj450;CMD:MLC,PCL,PML,DESKJET,DW-PCL,DYN;" driver="hp-dj_450" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 500" driver="pcl-500" manufacturer="HP" model="500" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 500C" driver="pcl-501" manufacturer="HP" model="501" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 505J Plus" driver="hp-dj_505j_plus" manufacturer="HP" model="500" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 510" driver="hp-dj_510" manufacturer="HP" model="500" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 520" driver="pcl-520" manufacturer="HP" model="500" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 540C" driver="pcl-540" manufacturer="HP" model="540" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 550C" driver="pcl-550" manufacturer="HP" model="550" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 5550" deviceid="MFG:hp;MDL:deskjet 5550;DES:hp deskjet 5550;CMD:MLC,PCL,PML,DW-PCL,DYN,DESKJET;" driver="hp-dj_5550" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 5551" driver="hp-dj_5551" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 560C" driver="pcl-560" manufacturer="HP" model="550" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 600" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 600;DES:Hewlett-Packard DeskJet 600;CMD:MLC,PCL,PML;" driver="pcl-600" manufacturer="HP" model="600" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 600C" driver="pcl-601" manufacturer="HP" model="601" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 610C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 610C;DES:Hewlett-Packard DeskJet 610C;CMD:MLC,PCL,PML;" driver="hp-dj_610c" manufacturer="HP" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 610CL" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 610C;DES:Hewlett-Packard DeskJet 610C;CMD:MLC,PCL,PML;" driver="hp-dj_610cl" manufacturer="HP" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 6122" deviceid="MFG:hp;MDL:deskjet 6122;DES:hp deskjet 6122;CMD:MLC,PCL,PML,DW-PCL,DYN,DESKJET;" driver="hp-dj_6122" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 6127" driver="hp-dj_6127" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 612C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 610C;DES:Hewlett-Packard DeskJet 610C;CMD:MLC,PCL,PML;" driver="hp-dj_612c" manufacturer="HP" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 640C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 640C;DES:Hewlett-Packard DeskJet 640C;CMD:MLC,PCL,PML;" driver="hp-dj_640c" manufacturer="HP" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 648C" driver="hp-dj_648c" manufacturer="HP" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 660C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 660C;DES:Hewlett-Packard DeskJet 660C;CMD:MLC,PCL,PML;" driver="hp-dj_660c" manufacturer="HP" model="601" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 670C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 670C;DES:Hewlett-Packard DeskJet 670C;CMD:MLC,PCL,PML;" driver="hp-dj_670c" manufacturer="HP" model="601" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 670TV" driver="hp-dj_670tv" manufacturer="HP" model="601" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 672C" driver="hp-dj_672c" manufacturer="HP" model="601" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 680C" driver="hp-dj_680c" manufacturer="HP" model="601" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 682C" driver="hp-dj_682c" manufacturer="HP" model="601" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 690C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 690C;DES:Hewlett-Packard DeskJet 690C;CMD:MLC,PCL,PML;" driver="pcl-690" manufacturer="HP" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 692C" driver="hp-dj_692c" manufacturer="HP" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 693C" driver="hp-dj_693c" manufacturer="HP" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 694C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 690C;DES:Hewlett-Packard DeskJet 690C;CMD:MLC,PCL,PML;" driver="hp-dj_694c" manufacturer="HP" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 695C" driver="hp-dj_695c" manufacturer="HP" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 697C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 690C;DES:Hewlett-Packard DeskJet 690C;CMD:MLC,PCL,PML;" driver="hp-dj_697c" manufacturer="HP" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 810C" driver="pcl-810" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> <!-- Uses 840 driver --> + <printer translate="name" name="HP DeskJet 812C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 810C;DES:Hewlett-Packard DeskJet 810C;CMD:MLC,PCL,PML;" driver="pcl-812" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> <!-- Uses 840 driver --> + <printer translate="name" name="HP DeskJet 815C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 815C;DES:Hewlett-Packard DeskJet 815C;CMD:MLC,PCL,PML;" driver="hp-dj_815c" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 816C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 815C;DES:Hewlett-Packard DeskJet 815C;CMD:MLC,PCL,PML;" driver="hp-dj_816c" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 825C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 825C;DES:Hewlett-Packard DeskJet 825C;CMD:MLC,PCL,PML;" driver="hp-dj_825c" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 830C" driver="hp-dj_830c" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 832C" driver="hp-dj_832c" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 840C" deviceid="MFG:Hewlett-Packard;MDL:DeskJet 840C;" driver="pcl-840" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> <!-- Uses 840 driver --> + <printer translate="name" name="HP DeskJet 841C" deviceid="MFG:Hewlett-Packard;MDL:DeskJet 841C;" driver="hp-dj_841c" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 842C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 840C;DES:Hewlett-Packard DeskJet 840C;CMD:MLC,PCL,PML;" driver="pcl-842" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> <!-- Uses 840 driver --> + <printer translate="name" name="HP DeskJet 843C" deviceid="MFG:Hewlett-Packard;MDL:DeskJet 843C;" driver="hp-dj_843c" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 845C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 845C;DES:Hewlett-Packard DeskJet 845C;CMD:MLC,PCL,PML;" driver="pcl-845" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> <!-- Uses 840 driver --> + <printer translate="name" name="HP DeskJet 850C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 850C;DES:Hewlett-Packard Deskjet 850C;CMD:PCL,MLC,PML;" driver="pcl-850" manufacturer="HP" model="800" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 855C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 850C;DES:Hewlett-Packard Deskjet 850C;CMD:PCL,MLC,PML;" driver="pcl-855" manufacturer="HP" model="800" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 870C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 870C;DES:Hewlett-Packard Deskjet 870C;CMD:PCL,MLC,PML;" driver="pcl-870" manufacturer="HP" model="800" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 880C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 880C;DES:Hewlett-Packard DeskJet 880C;CMD:MLC,PCL,PML;" driver="hp-dj_880c" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 882C" driver="hp-dj_882c" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 890C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 890C;DES:Hewlett-Packard Deskjet 890C;CMD:PCL,MLC,PML;" driver="pcl-890" manufacturer="HP" model="800" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 895C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 895C;DES:Hewlett-Packard DeskJet 895C;CMD:MLC,PCL,PML;" driver="pcl-895" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> <!-- Uses 840 driver --> + <printer translate="name" name="HP DeskJet 916C" driver="pcl-900" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 920C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 920C;DES:Hewlett-Packard DeskJet 920C;CMD:MLC,PCL,PML;" driver="hp-dj_920c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 9300" driver="hp-dj_9300" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 930C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 930C;DES:Hewlett-Packard DeskJet 930C;CMD:MLC,PCL,PML;" driver="hp-dj_930c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 932C" driver="hp-dj_932c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 933C" driver="hp-dj_933c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 934C" driver="hp-dj_934c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 935C" driver="hp-dj_935c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 940C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 940C;DES:Hewlett-Packard DeskJet 940C;CMD:MLC,PCL,PML;" driver="hp-dj_940c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 948C" driver="hp-dj_948c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 950C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 950C;DES:Hewlett-Packard DeskJet 950C;CMD:MLC,PCL,PML;" driver="hp-dj_950c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 952C" driver="hp-dj_952c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 955C" driver="hp-dj_955c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 957C" driver="hp-dj_957c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 959C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 950C;DES:Hewlett-Packard DeskJet 950C;CMD:MLC,PCL,PML;" driver="hp-dj_959c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 960C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 960C;DES:Hewlett-Packard DeskJet 960C;CMD:MLC,PCL,PML;" driver="hp-dj_960c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 970C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 970C;DES:Hewlett-Packard DeskJet 970C;CMD:MLC,PCL,PML;" driver="hp-dj_970c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 975C" driver="hp-dj_975c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 980C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 980C;DES:Hewlett-Packard DeskJet 980C;CMD:MLC,PCL,PML;" driver="hp-dj_980c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 990C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 990C;DES:Hewlett-Packard DeskJet 990C;CMD:MLC,PCL,PML;" driver="hp-dj_990c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 995C" driver="hp-dj_995c" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 1100C" driver="pcl-1100" manufacturer="HP" model="1100" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 1120C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 1120C;DES:Hewlett-Packard Deskjet 1120C;CMD:PCL,MLC,PML;" driver="pcl-1120" manufacturer="HP" model="1100" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 1125C" driver="hp-dj_1125c" manufacturer="HP" model="1100" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 1200C" driver="pcl-1200" manufacturer="HP" model="1200" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 1220C" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 1220C;DES:Hewlett-Packard DeskJet 1220;CMD:MLC,PCL,PML;" driver="pcl-1220" manufacturer="HP" model="901" parameters="pcl_inkjet_params" /> <!-- Uses 900 series driver (large) --> + <printer translate="name" name="HP DeskJet 1600C" driver="pcl-1600" manufacturer="HP" model="1600" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 1600CM" driver="hp-dj_1600cm" manufacturer="HP" model="1600" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 2000" driver="pcl-2000" manufacturer="HP" model="2000" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 2500" driver="pcl-2500" manufacturer="HP" model="2500" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 2500CM" driver="hp-2500cm" manufacturer="HP" model="2500" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 340C" deviceid="MFG:Hewlett-Packard;MDL:HP DeskJet 340;DES:HP;CMD:PCL,C32;" driver="pcl-340" manufacturer="HP" model="340" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 3810" driver="hp-dj_3810" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 3816" driver="hp-dj_3816" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 3820" deviceid="MFG:HEWLETT-PACKARD;MDL:DESKJET 3820;DES:Hewlett-Packard DeskJet 3820;CMD:MLC,PCL,PML;" driver="hp-dj_3820" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP DeskJet 3822" driver="hp-dj_3822" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP LaserJet 2" driver="pcl-2" manufacturer="HP" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 2D" driver="hp-lj_2d" manufacturer="HP" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 2P Plus" driver="hp-lj_2p_plus" manufacturer="HP" model="21" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 2P" driver="pcl-2p" manufacturer="HP" model="21" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3" driver="pcl-3" manufacturer="HP" model="3" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3D" driver="hp-lj_3d" manufacturer="HP" model="3" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3P w/ PCL5" driver="hp-lj_3p_w_pcl5" manufacturer="HP" model="4" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3P w/PS" driver="hp-lj_3p_w_ps" manufacturer="HP" model="3" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 4 Plus" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 4 Plus;CMD:PJL,PCL,POSTSCRIPT;" driver="hp-lj_4_plus" manufacturer="HP" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 4" driver="pcl-4" manufacturer="HP" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 4L" deviceid="MFG:Hewlett-Packard;MDL:LaserJet 4L;CMD:HP ENHANCED PCL5,PJL;" driver="pcl-4l" manufacturer="HP" model="4" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 4M" driver="hp-lj_4m" manufacturer="HP" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 4ML" driver="hp-lj_4ml" manufacturer="HP" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 4P" driver="hp-lj_4p" manufacturer="HP" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 4Si" driver="pcl-4si" manufacturer="HP" model="51" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 4V" driver="pcl-4v" manufacturer="HP" model="5" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 5" driver="pcl-5" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 5L" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 5L;DES:Hewlett-Packard LaserJet 5L Printer;CMD:HP ENHANCED PCL5,PJL;" driver="hp-lj_5l" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 5M" driver="hp-lj_5m" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 5MP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 5MP;DES:Hewlett-Packard LaserJet 5MP Printer;CMD:HP ENHANCED PCL5,PJL,POSTSCRIPT;" driver="hp-lj_5mp" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 5P" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 5P;DES:Hewlett-Packard LaserJet 5P Printer;CMD:HP ENHANCED PCL5,PJL;" driver="hp-lj_5p" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 5Si" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 5Si;DES:None;CMD:PJL,MLC,PCL,POSTSCRIPT;" driver="pcl-5si" manufacturer="HP" model="7" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 6" driver="pcl-6" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 6L" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 6L;DES:Hewlett-Packard LaserJet 6L Printer;" driver="hp-lj_6l" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 6MP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 6MP;DES:Hewlett-Packard LaserJet 6MP Printer;CMD:PJL,MLC,PCLXL,PCL,POSTSCRIPT;" driver="hp-lj_6mp" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 6P" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 6P;DES:Hewlett-Packard LaserJet 6P Printer;CMD:HP ENHANCED PCL5,PJL;" driver="hp-lj_6p" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 1010" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 1010;CMD:FastRaster;" driver="hp-lj_1010" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 1012" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 1012;CMD:FastRaster;" driver="hp-lj_1012" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 1015" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 1015;CMD:FastRaster;" driver="hp-lj_1015" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 1022" driver="hp-lj_1022" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 1100" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 1100;DES:HP LaserJet 1100 Printer;CMD:MLC,PCL,PJL;" driver="hp-lj_1100" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 1100A" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 1100;DES:HP LaserJet 1100A Printer-Copier-Scanner;CMD:MLC,MFPDTF1,PCL,PJL;" driver="hp-lj_1100a" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 1150" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 1150;DES:Hewlett-Packard LaserJet 1150;CMD:PJL,MLC,BIDI-ECP,PCL,DW-PCL;" driver="hp-lj_1150" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 1160" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 1160 series;DES:Hewlett-Packard LaserJet 1160 series;CMD:PJL,MLC,BIDI-ECP,PCL,DW-PCL;" driver="hp-lj_1160" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 1200" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 1200;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_1200" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 1220" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 1220;DES:Hewlett-Packard LaserJet 1220;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_1220" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 1300" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 1300;DES:Hewlett-Packard LaserJet 1300;CMD:PJL,MLC,BIDI-ECP,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_1300" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 1320" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 1320 series;DES:Hewlett-Packard LaserJet 1320 series;CMD:PJL,MLC,BIDI-ECP,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_1320" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 2100" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 2100 Series;DES:Hewlett-Packard LaserJet 2100 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_2100" manufacturer="HP" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 2100M" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 2100 Series;DES:Hewlett-Packard LaserJet 2100 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_2100m" manufacturer="HP" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 2200" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 2200;DES:Hewlett-Packard LaserJet 2200;" driver="hp-lj_2200" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 2300" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 2300 series;DES:Hewlett-Packard LaserJet 2300 series;CMD:PJL,MLC,BIDI-ECP,PCLXL,PCL,PJL,POSTSCRIPT;" driver="hp-lj_2300" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 2410" driver="hp-lj_2410" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 2420" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 2420;DES:Hewlett-Packard LaserJet 2420;CMD:PJL,MLC,PCLXL,PCL,PJL,POSTSCRIPT;" driver="hp-lj_2420" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 2430" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 2430;DES:Hewlett-Packard LaserJet 2430;CMD:PJL,MLC,PCLXL,PCL,PJL,POSTSCRIPT,PDF;" driver="hp-lj_2430" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3015" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3015;DES:Hewlett-Packard LaserJet 3015;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3015" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3020" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 3020;DES:Hewlett-Packard LaserJet 3020;CMD:PJL,MLC,BIDI-ECP,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3020" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3030" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3030;DES:Hewlett-Packard LaserJet 3030;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3030" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3050" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3050;DES:Hewlett-Packard LaserJet 3050;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3050" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3052" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3052;DES:Hewlett-Packard LaserJet 3052;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3052" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3055" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3055;DES:Hewlett-Packard LaserJet 3055;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3055" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3200" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3200;DES:Hewlett-Packard LaserJet 3200;CMD:PJL,MLC,PCL,PCLXL;" driver="hp-lj_3200" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3200m" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3200M;DES:Hewlett-Packard LaserJet 3200M;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_3200m" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3200se" driver="hp-lj_3200se" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3300 MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3300/3310/3320;DES:Hewlett-Packard LaserJet 3300/3310/3320;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3300_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3310 MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3300/3310/3320;DES:Hewlett-Packard LaserJet 3300/3310/3320;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3310_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3320 MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3300/3310/3320;DES:Hewlett-Packard LaserJet 3300/3310/3320;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3320_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3320N MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3300/3310/3320;DES:Hewlett-Packard LaserJet 3300/3310/3320;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3320n_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3330 MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3330;DES:Hewlett-Packard LaserJet 3330;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3330_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3380" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3380;DES:Hewlett-Packard LaserJet 3380;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3380" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3390" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3390;DES:Hewlett-Packard LaserJet 3390;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3390" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 3392" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 3390;DES:Hewlett-Packard LaserJet 3390;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_3392" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 4000" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 4000 Series;DES:Hewlett-Packard LaserJet 4000 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_4000" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 4050" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 4050 Series ;DES:Hewlett-Packard LaserJet 4050 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_4050" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 4100" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 4100 Series ;DES:Hewlett-Packard LaserJet 4100 Series;CMD:PJL,MLC,PCL,POSTSCRIPT,PCLXL,PJL;" driver="hp-lj_4100" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 4200" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 4200;DES:Hewlett-Packard LaserJet 4200;CMD:PJL,MLC,POSTSCRIPT,PJL,PCLXL,PCL;" driver="hp-lj_4200" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 4240" driver="hp-lj_4240" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 4250" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 4250;DES:Hewlett-Packard LaserJet 4250;CMD:PJL,MLC,PCLXL,PCL,PJL,POSTSCRIPT;" driver="hp-lj_4250" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 4300" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 4300;CMD:PJL,MLC,POSTSCRIPT,PJL,PCLXL,PCL;" driver="hp-lj_4300" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 4345 mfp" driver="hp-lj_4345_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 4350" deviceid="MFG:Hewlett-Packard;MDL:hp LaserJet 4350;CMD:PJL,MLC,PCLXL,PCL,PJL,POSTSCRIPT,PDF;" driver="hp-lj_4350" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 5000" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 5000 Series;DES:Hewlett-Packard LaserJet 5000 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_5000" manufacturer="HP" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 5100" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 5100 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_5100" manufacturer="HP" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 5200" driver="hp-lj_5200" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 5200L" driver="hp-lj_5200l" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 8000" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 8000 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_8000" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 8100" driver="hp-lj_8100" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 8150" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 8150 Series;DES:Hewlett-Packard LaserJet 8150 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_8150" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 9000" driver="hp-lj_9000" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 9040" driver="hp-lj_9040" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 9040 MFP" driver="hp-lj_9040_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 9050" driver="hp-lj_9050" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet 9050 MFP" driver="hp-lj_9050_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet M3027 MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet M3027 MFP;DES:Hewlett-Packard LaserJet 8150 Series;CMD:PJL,MLC,BIDI-ECP,PCLXL,PCL,PDF,PJL,POSTSCRIPT;" driver="hp-lj_m3027_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet M3035 MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet M3035 MFP;DES:Hewlett-Packard LaserJet 8150 Series;CMD:PJL,MLC,BIDI-ECP,PJL,PCLXL,PCL,PDF,POSTSCRIPT;" driver="hp-lj_m3035_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet M4345 MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 8150 Series;DES:Hewlett-Packard LaserJet 8150 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_m4345_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet M5025 MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 8150 Series;DES:Hewlett-Packard LaserJet 8150 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_m5025_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet M5035 MFP" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet 8150 Series;DES:Hewlett-Packard LaserJet 8150 Series;CMD:PJL,MLC,PCL,PCLXL,POSTSCRIPT;" driver="hp-lj_m5035_mfp" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet P2010" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet P2010 series;DES:Hewlett-Packard LaserJet P2010 series;CMD:PJL,MLC,BIDI-ECP,PCL,DW-PCL;" driver="hp-lj_p2010" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet P2015" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet P2015 Series;DES:Hewlett-Packard LaserJet P2015 series;CMD:PJL,MLC,BIDI-ECP,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_p2015" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet P3004" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet P3004 Series;DES:Hewlett-Packard LaserJet P3004 Series;CMD:PJL,MLC,BIDI-ECP,PCL,POSTSCRIPT,PCLXL;" driver="hp-lj_p3004" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP LaserJet P3005" deviceid="MFG:Hewlett-Packard;MDL:HP LaserJet P3005;DES:Hewlett-Packard LaserJet P3005 Series;CMD:PJL,MLC,BIDI-ECP,POSTSCRIPT,PJL,PCLXL,PCL;" driver="hp-lj_p3005" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP Mopier 240" driver="hp-mopier_240" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP Mopier 320" driver="hp-mopier_320" manufacturer="HP" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="HP OfficeJet 300" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 300;DES:Hewlett-Packard OfficeJet Series 300;CMD:MLC,PCL,PML;" driver="hp-oj_300" manufacturer="HP" model="500" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 330" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 300;DES:Hewlett-Packard OfficeJet Series 300;CMD:MLC,PCL,PML;" driver="hp-oj_330" manufacturer="HP" model="500" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 350" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 300;DES:Hewlett-Packard OfficeJet Series 300;CMD:MLC,PCL,PML;" driver="hp-oj_350" manufacturer="HP" model="500" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 500" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 500;CMD:MLC,PCL,PML;" driver="hp-oj_500" manufacturer="HP" model="601" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 520" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 500;CMD:MLC,PCL,PML;" driver="hp-oj_520" manufacturer="HP" model="601" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 570" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 500;CMD:MLC,PCL,PML;" driver="hp-oj_570" manufacturer="HP" model="601" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 580" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 500;CMD:MLC,PCL,PML;" driver="hp-oj_580" manufacturer="HP" model="601" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 590" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 500;CMD:MLC,PCL,PML;" driver="hp-oj_590" manufacturer="HP" model="601" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 600" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 600;CMD:MLC,PCL,PML;" driver="hp-oj_600" manufacturer="HP" model="601" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 610" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 600;CMD:MLC,PCL,PML;" driver="hp-oj_610" manufacturer="HP" model="601" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 625" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 600;CMD:MLC,PCL,PML;" driver="hp-oj_625" manufacturer="HP" model="601" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 630" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 600;CMD:MLC,PCL,PML;" driver="hp-oj_630" manufacturer="HP" model="601" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 635" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 600;CMD:MLC,PCL,PML;" driver="hp-oj_635" manufacturer="HP" model="601" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 700" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 700;CMD:MLC,PCL,PML;" driver="hp-oj_700" manufacturer="HP" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 710" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 700;CMD:MLC,PCL,PML;" driver="hp-oj_710" manufacturer="HP" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 720" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 700;CMD:MLC,PCL,PML;" driver="hp-oj_720" manufacturer="HP" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 725" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet Series 700;CMD:MLC,PCL,PML;" driver="hp-oj_725" manufacturer="HP" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 5105" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet 5105;DES:Hewlett-Packard OfficeJet 5100 Series;CMD:MLC,PCL,PML;" driver="hp-oj_5105" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 5110" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet 5110v;DES:Hewlett-Packard OfficeJet 5100 Series;CMD:MLC,PCL,PML;" driver="hp-oj_5110" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 5110xi" driver="hp-oj_5110xi" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 6105" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet 6100 Series;CMD:MLC,PCL,PML,DW-PCL,DYN;" driver="hp-oj_6105" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 6110" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet 6100 Series;CMD:MLC,PCL,PML,DW-PCL,DYN;" driver="hp-oj_6110" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 7110" deviceid="MFG:Hewlett-Packard;MDL:officejet 7100 series;CMD:MLC,PCL,PML,DW-PCL,BIDI-ECP;" driver="hp-oj_7110" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 7130" deviceid="MFG:Hewlett-Packard;MDL:officejet 7100 series;CMD:MLC,PCL,PML,DW-PCL,BIDI-ECP;" driver="hp-oj_7130" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet 7140" deviceid="MFG:Hewlett-Packard;MDL:officejet 7100 series;CMD:MLC,PCL,PML,DW-PCL,BIDI-ECP;" driver="hp-oj_7140" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet D125" deviceid="MFG:Hewlett-Packard;MDL:officejet d series;CMD:MLC,PCL,PML,DW-PCL,BIDI-ECP;" driver="hp-oj_d125" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet D135" deviceid="MFG:Hewlett-Packard;MDL:officejet d series;CMD:MLC,PCL,PML,DW-PCL,BIDI-ECP;" driver="hp-oj_d135" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet D145" deviceid="MFG:Hewlett-Packard;MDL:officejet d series;CMD:MLC,PCL,PML,DW-PCL,BIDI-ECP;" driver="hp-oj_d145" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet D155" deviceid="MFG:Hewlett-Packard;MDL:officejet d series;CMD:MLC,PCL,PML,DW-PCL,BIDI-ECP;" driver="hp-oj_d155" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet G55" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet G55;DES:Hewlett-Packard OfficeJet G Series;CMD:MLC,PCL,PML,SCL;" driver="hp-oj_g55" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet G85" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet G85;DES:Hewlett-Packard OfficeJet G Series;CMD:MLC,PCL,PML,SCL;" driver="hp-oj_g85" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet G95" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet G95;DES:Hewlett-Packard OfficeJet G Series;CMD:MLC,PCL,PML,SCL;" driver="hp-oj_g95" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet K60" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet K60;DES:Hewlett-Packard OfficeJet K Series;CMD:MLC,PCL,PML;" driver="hp-oj_k60" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet K60xi" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet K60xi;DES:Hewlett-Packard OfficeJet K Series;CMD:MLC,PCL,PML;" driver="hp-oj_k60xi" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet K80" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet K80;DES:Hewlett-Packard OfficeJet K Series;CMD:MLC,PCL,PML;" driver="hp-oj_k80" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet K80xi" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet K80xi;DES:Hewlett-Packard OfficeJet K Series;CMD:MLC,PCL,PML;" driver="hp-oj_k80xi" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet LX" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet;CMD:MLC,PCL,PML;" driver="hp-oj_lx" manufacturer="HP" model="500" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet Pro 1150C" deviceid="MFG:HEWLETT-PACKARD;MDL:OFFICEJET PRO 1150C;DES:Hewlett-Packard OfficeJet Pro 1150C;CMD:PCL,MLC,PML,PJL;" driver="hp-oj_pro_1150c" manufacturer="HP" model="800" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet Pro 1170C" deviceid="MFG:HEWLETT-PACKARD;MDL:OFFICEJET PRO 1170C SERIES;DES:Hewlett-Packard OfficeJet Pro 1170C Series;CMD:PCL,MLC,PML,PJL;" driver="hp-oj_pro_1170c" manufacturer="HP" model="800" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet Pro 1175C" deviceid="MFG:HEWLETT-PACKARD;MDL:OFFICEJET PRO 1170C SERIES;DES:Hewlett-Packard OfficeJet Pro 1170C Series;CMD:PCL,MLC,PML,PJL;" driver="hp-oj_pro_1175c" manufacturer="HP" model="800" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet R40" deviceid="MFG:HEWLETT-PACKARD;MDL:OFFICEJET R40;DES:Hewlett-Packard OfficeJet R40;CMD:MLC,PCL,PML,SCL;" driver="hp-oj_r40" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet R45" deviceid="MFG:HEWLETT-PACKARD;MDL:OFFICEJET R40;DES:Hewlett-Packard OfficeJet R40;CMD:MLC,PCL,PML,SCL;" driver="hp-oj_r45" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet R60" deviceid="MFG:HEWLETT-PACKARD;MDL:OFFICEJET R60;DES:Hewlett-Packard OfficeJet R60;CMD:MLC,PCL,PML,SCL;" driver="hp-oj_r60" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet R65" deviceid="MFG:HEWLETT-PACKARD;MDL:OFFICEJET R65;DES:Hewlett-Packard OfficeJet R65;CMD:MLC,PCL,PML,SCL;" driver="hp-oj_r65" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet R80" deviceid="MFG:HEWLETT-PACKARD;MDL:OFFICEJET R80;DES:Hewlett-Packard OfficeJet R80;CMD:MLC,PCL,PML,SCL;" driver="hp-oj_r80" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet T45" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet T Series;DES:Hewlett-Packard OfficeJet T Series;CMD:MLC,PCL,PML;" driver="hp-oj_t45" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet T65" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet T Series;DES:Hewlett-Packard OfficeJet T Series;CMD:MLC,PCL,PML;" driver="hp-oj_t65" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet V40" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet V40;DES:Hewlett-Packard OfficeJet V Series;CMD:MLC,PCL,PML;" driver="hp-oj_v40" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet V40xi" deviceid="MFG:Hewlett-Packard;MDL:OfficeJet V40xi;DES:Hewlett-Packard OfficeJet V Series;CMD:MLC,PCL,PML;" driver="hp-oj_v40xi" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP OfficeJet" driver="hp-oj" manufacturer="HP" model="500" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PSC 370" deviceid="MFG:Hewlett-Packard;MDL:Printer/Scanner/Copier 300;CMD:MLC,PCL,PML;" driver="hp-psc_370" manufacturer="HP" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PSC 380" deviceid="MFG:Hewlett-Packard;MDL:Printer/Scanner/Copier 300;CMD:MLC,PCL,PML;" driver="hp-psc_380" manufacturer="HP" model="690" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PSC 500" deviceid="MFG:HEWLETT-PACKARD;MDL:PSC 500;DES:Hewlett-Packard PSC 500;CMD:MLC,PCL,PML,SCL;" driver="hp-psc_500" manufacturer="HP" model="840" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PSC 750" deviceid="MFG:Hewlett-Packard;MDL:PSC 750;DES:Hewlett-Packard PSC 700 Series;CMD:MLC,PCL,PML;" driver="hp-psc_750" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PSC 950" deviceid="MFG:Hewlett-Packard;MDL:PSC 900 Series;DES:Hewlett-Packard PSC 900 Series;CMD:MLC,PCL,PML;" driver="hp-psc_950" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PSC 950xi" deviceid="MFG:Hewlett-Packard;MDL:PSC 900 Series;DES:Hewlett-Packard PSC 900 Series;CMD:MLC,PCL,PML;" driver="hp-psc_950xi" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PSC 2110" deviceid="MFG:Hewlett-Packard;MDL:PSC 2100 Series;CMD:MLC,PCL,PML,DW-PCL,DYN;" driver="hp-psc_2110" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PSC 2150" deviceid="MFG:Hewlett-Packard;MDL:PSC 2150 Series;CMD:MLC,PCL,PML,DW-PCL,DYN;" driver="hp-psc_2150" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PSC 2210" deviceid="MFG:Hewlett-Packard;MDL:PSC 2200 Series;CMD:MLC,PCL,PML,DW-PCL,DYN;" driver="hp-psc_2210" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PhotoSmart 7150" deviceid="MFG:hp;MDL:photosmart 7150;DES:hp photosmart 7150;CMD:MLC,PCL,PML,DW-PCL,DYN,DESKJET;" driver="hp-psc_7150" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PhotoSmart 7345" driver="hp-psc_7345" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PhotoSmart 7350" deviceid="MFG:hp;MDL:photosmart 7350;DES:hp photosmart 7350;CMD:MLC,PCL,PML,DW-PCL,DYN,DESKJET;" driver="hp-psc_7350" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PhotoSmart 7550" deviceid="MFG:hp;MDL:photosmart 7550;DES:hp photosmart 7550;CMD:MLC,PCL,PML,DW-PCL,DYN,DESKJET;" driver="hp-psc_7550" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PhotoSmart P100" deviceid="MFG:HP;MDL:PHOTOSMART 100;DES:hp photosmart 100;CMD:MLC,PCL,PML,BIDI-ECP,ECP18,DW-PCL;" driver="hp-psc_p100" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PhotoSmart P130" driver="hp-psc_p130" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PhotoSmart P230" driver="hp-psc_p230" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PhotoSmart P1000" deviceid="MFG:HEWLETT-PACKARD;MDL:PHOTOSMART P1000;DES:Hewlett-Packard PhotoSmart P1000;CMD:MLC,PCL,PML;" driver="pcl-P1000" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> <!-- Uses 900 series driver --> + <printer translate="name" name="HP PhotoSmart P1100" deviceid="MFG:HEWLETT-PACKARD;MDL:PHOTOSMART P1100;DES:Hewlett-Packard PhotoSmart P1100;CMD:MLC,PCL,PML;" driver="pcl-P1100" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> <!-- Uses 900 series driver --> + <printer translate="name" name="HP PhotoSmart P1115" deviceid="MFG:HP;MDL:PHOTOSMART 1115;DES:hp photosmart 1115;CMD:MLC,PCL,PML,BIDI-ECP,ECP18,DW-PCL;" driver="hp-psc_p1115" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PhotoSmart P1215" driver="hp-psc_p1215" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PhotoSmart P1218" deviceid="MFG:HP;MDL:PHOTOSMART 1218;DES:hp photosmart 1218;CMD:MLC,PCL,PML,BIDI-ECP,ECP18,DW-PCL;" driver="hp-psc_p1218" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP PhotoSmart P1315" deviceid="MFG:HP;MDL:PHOTOSMART 1315;DES:hp photosmart 1315;CMD:MLC,PCL,PML,BIDI-ECP,ECP18,DW-PCL;" driver="hp-psc_p1315" manufacturer="HP" model="900" parameters="pcl_inkjet_params" /> + <printer translate="name" name="HP e-printer e20" driver="hp-e-printer_e20" manufacturer="HP" model="601" parameters="pcl_inkjet_params" /> + <printer translate="name" name="IBM 4019" driver="ibm-4019" manufacturer="IBM" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="IBM 4029 030 LaserPrinter 10" driver="ibm-4029_030_lp_10" manufacturer="IBM" model="3" parameters="pcl_laser_params" /> + <printer translate="name" name="IBM 4312" driver="ibm-4312" manufacturer="IBM" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="IBM Infoprint 12" deviceid="MFG:IBM;MDL:Infoprint;CMD:PCL5E,PCL6;" driver="ibm-infoprint_12" manufacturer="IBM" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="IBM Page Printer 3112" deviceid="MFG:Lexmark International;MDL:IBM 3112 Page Printer;DES:IBM 3112 Page Printer;CMD:PCL 5 Emulation, PostScript Level 2 Emulation, NPAP, PJL;" driver="ibm-pp_3112" manufacturer="IBM" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec 4353 MF" driver="infotec-4353_mf" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec 4452 MF" driver="infotec-4452_mf" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec 4651 MF" deviceid="MFG:Lexmark International;MDL:IBM 3112 Page Printer;DES:IBM 3112 Page Printer;CMD:PCL 5 Emulation, PostScript Level 2 Emulation, NPAP, PJL;" driver="infotec-4651_mf" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS2022" driver="infotec-is2022" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS2027" driver="infotec-is2027" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS2032" driver="infotec-is2032" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS2035" driver="infotec-is2035" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS2045" driver="infotec-is2045" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS2090" driver="infotec-is2090" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS2105" driver="infotec-is2105" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2015" driver="infotec-is_2015" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2018" driver="infotec-is_2018" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2018D" driver="infotec-is_2018d" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2060" driver="infotec-is_2060" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2075" driver="infotec-is_2075" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2122" driver="infotec-is_2122" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2127" driver="infotec-is_2127" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2132" driver="infotec-is_2132" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2135" driver="infotec-is_2135" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2145" driver="infotec-is_2145" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2151" driver="infotec-is_2151" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2160" driver="infotec-is_2160" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2175" driver="infotec-is_2175" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2215" driver="infotec-is_2215" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2216" driver="infotec-is_2216" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2220" driver="infotec-is_2220" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2220D" driver="infotec-is_2220d" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2225" driver="infotec-is_2225" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2230" driver="infotec-is_2230" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2235" driver="infotec-is_2235" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2245" driver="infotec-is_2245" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2255" driver="infotec-is_2255" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2265" driver="infotec-is_2265" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2275" driver="infotec-is_2275" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2316" driver="infotec-is_2316" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2320" driver="infotec-is_2320" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2325" driver="infotec-is_2325" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2416" driver="infotec-is_2416" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2425" driver="infotec-is_2425" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2430" driver="infotec-is_2430" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2435" driver="infotec-is_2435" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 2445" driver="infotec-is_2445" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 3090" driver="infotec-is_3090" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 3110" driver="infotec-is_3110" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec IS 3135" driver="infotec-is_3135" manufacturer="Infotec" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec MP 2550" driver="infotec-mp_2550" manufacturer="Infotec" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec MP 2550B" driver="infotec-mp_2550b" manufacturer="Infotec" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec MP 3350" driver="infotec-mp_3350" manufacturer="Infotec" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec MP 3350B" driver="infotec-mp_3350b" manufacturer="Infotec" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec MP 4000" driver="infotec-mp_4000" manufacturer="Infotec" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec MP 4000B" driver="infotec-mp_4000b" manufacturer="Infotec" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec MP 5000" driver="infotec-mp_5000" manufacturer="Infotec" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Infotec MP 5000B" driver="infotec-mp_5000b" manufacturer="Infotec" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera CS-1815" driver="kyocera-cs-1815" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera F-1010" deviceid="MFG:Kyocera;MDL:F-1010;DES:Kyocera F-1010;" driver="kyocera-f-1010" manufacturer="Kyocera" model="22" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-600 - KPDL-2" driver="kyocera-fs-600_kpdl-2" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-600" deviceid="MFG:Kyocera;MDL:Kyocera FS-600;DES:Kyocera FS-600;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-600" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-680" deviceid="MFG:Kyocera;MDL:Kyocera FS-680;DES:Kyocera FS-680;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-680" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-800" deviceid="MFG:Kyocera;MDL:Kyocera FS-800;DES:Kyocera FS-800;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-800" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-920" driver="kyocera-fs-920" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1000" deviceid="MFG:Kyocera;MDL:Kyocera FS-1000;DES:Kyocera FS-1000;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-1000" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1000+" driver="kyocera-fs-1000plus" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1010" deviceid="MFG:Kyocera Mita;MDL:Kyocera Mita FS-1010;DES:Kyocera FS-1010;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-1010" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1018MFP" driver="kyocera-fs-1018mfp" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1020D" driver="kyocera-fs-1020d" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1030D" driver="kyocera-fs-1030d" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1050" deviceid="MFG:Kyocera Mita;MDL:Kyocera Mita FS-1050;DES:Kyocera FS-1050;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-1050" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1118MFP" deviceid="MFG:Kyocera;MDL:FS-1118MFP;CMD:PCLXL,PostScript Emulation,PCL5E,PJL;" driver="kyocera-fs-1118mfp" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1135MFP" deviceid="MFG:Kyocera;MDL:FS-1135MFP;CMD:PCLXL,PostScript Emulation,PCL5E,PJL;" driver="kyocera-fs-1135mfp" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1200" deviceid="MFG:Kyocera;MDL:Kyocera FS-1200;DES:Kyocera FS-1200;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-1200" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1600" deviceid="MFG:Kyocera;MDL:FS-1600;DES:Kyocera FS-1600;" driver="kyocera-fs-1600" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1600+" driver="kyocera-fs-1600plus" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1700" deviceid="MFG:Kyocera;MDL:Kyocera FS-1700;DES:Kyocera FS-1700;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-1700" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1700+" driver="kyocera-fs-1700plus" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1714M" driver="kyocera-fs-1714m" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1750" deviceid="MFG:Kyocera;MDL:Kyocera FS-1750;DES:Kyocera FS-1750;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-1750" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1800" deviceid="MFG:Kyocera Mita;MDL:Kyocera Mita FS-1800;DES:Kyocera FS-1800;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-1800" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1800+" driver="kyocera-fs-1800plus" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1900" deviceid="MFG:Kyocera Mita;MDL:Kyocera Mita FS-1900;DES:Kyocera FS-1900;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-1900" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-1920" driver="kyocera-fs-1920" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-2000D" driver="kyocera-fs-2000d" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-3500" deviceid="MFG:Kyocera;MDL:FS-3500;DES:Kyocera FS-3500;" driver="kyocera-fs-3500" manufacturer="Kyocera" model="32" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-3600" deviceid="MFG:Kyocera;MDL:FS-3600;DES:Kyocera FS-3600;" driver="kyocera-fs-3600" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-3600+" driver="kyocera-fs-3600plus" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-3700" deviceid="MFG:Kyocera;MDL:Kyocera FS-3700;DES:Kyocera FS-3700;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-3700" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-3700+" driver="kyocera-fs-3700plus" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-3718M" driver="kyocera-fs-3718m" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-3750" deviceid="MFG:Kyocera;MDL:Kyocera FS-3750;DES:Kyocera FS-3750;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-3750" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-3800" deviceid="MFG:Kyocera Mita;MDL:Kyocera Mita FS-3800;DES:Kyocera FS-3800;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-3800" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-3820N" driver="kyocera-fs-3820n" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-3830N" driver="kyocera-fs-3830n" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-3900DN" driver="kyocera-fs-3900dn" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-4000DN" driver="kyocera-fs-4000dn" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-5800C" deviceid="MFG:Kyocera;MDL:Kyocera FS-5800C;DES:Kyocera FS-5800C;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-5800c" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-5900C" deviceid="MFG:Kyocera;MDL:Kyocera FS-5900C;DES:Kyocera FS-5900C;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-5900c" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-6020" driver="kyocera-fs-6020" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-6026" driver="kyocera-fs-6026" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-6300" driver="kyocera-fs-6300" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-6500" deviceid="MFG:Kyocera;MDL:FS-6500;DES:Kyocera FS-6500;" driver="kyocera-fs-6500" manufacturer="Kyocera" model="32" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-6500+" driver="kyocera-fs-6500plus" manufacturer="Kyocera" model="35" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-6700" deviceid="MFG:Kyocera;MDL:Kyocera FS-6700;DES:Kyocera FS-6700;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-6700" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-6750" driver="kyocera-fs-6750" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-6900" driver="kyocera-fs-6900" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-6950DN" driver="kyocera-fs-6950dn" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-7000" deviceid="MFG:Kyocera;MDL:Kyocera FS-7000;DES:Kyocera FS-7000;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-7000" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-7000+" driver="kyocera-fs-7000plus" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-7028M" driver="kyocera-fs-7028m" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-8000C" deviceid="MFG:Kyocera Mita;MDL:Kyocera Mita FS-8000C;DES:Kyocera FS-8000C;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-8000c" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-9000" deviceid="MFG:Kyocera;MDL:Kyocera FS-9000;DES:Kyocera FS-9000;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-9000" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-9100DN" deviceid="MFG:Kyocera Mita;MDL:Kyocera Mita FS-9100DN;DES:Kyocera FS-9100DN;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-9100dn" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-9130DN" driver="kyocera-fs-9130dn" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-9500DN" deviceid="MFG:Kyocera Mita;MDL:Kyocera Mita FS-9500DN;DES:Kyocera FS-9500DN;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-fs-9500dn" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera FS-9530DN" driver="kyocera-fs-9530dn" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera KM-1510" driver="kyocera-km-1510" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera KM-1530" deviceid="MFG:Kyocera Mita;MDL:KM-1530;DES:Kyocera Mita KM-1530;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-km-1530" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera KM-1810" deviceid="MFG:Kyocera Mita;MDL:KM-1810;DES:Kyocera Mita KM-1810;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-km-1810" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera KM-1815" driver="kyocera-km-1815" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera KM-1820" driver="kyocera-km-1820" manufacturer="Kyocera" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera KM-2030" deviceid="MFG:Kyocera Mita;MDL:KM-2030;DES:Kyocera Mita KM-2030;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-km-2030" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera KM-2530" deviceid="MFG:Kyocera Mita;MDL:KM-2530;DES:Kyocera Mita KM-2530;" driver="kyocera-km-2530" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera KM-3050" driver="kyocera-km-3050" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera KM-3530" deviceid="MFG:Kyocera Mita;MDL:KM-3530;DES:Kyocera Mita KM-3530;" driver="kyocera-km-3530" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera KM-4050" driver="kyocera-km-4050" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera KM-4230" deviceid="MFG:Kyocera Mita;MDL:KM-4230;DES:Kyocera Mita KM-4230;" driver="kyocera-km-4230" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera KM-4230/5230" driver="kyocera-km-4230_5230" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera KM-4530" deviceid="MFG:Kyocera Mita;MDL:KM-4530;DES:Kyocera Mita KM-4530;" driver="kyocera-km-4530" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera KM-5050" driver="kyocera-km-5050" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera KM-5230" deviceid="MFG:Kyocera Mita;MDL:KM-5230;DES:Kyocera Mita KM-5230;" driver="kyocera-km-5230" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera KM-5530" deviceid="MFG:Kyocera Mita;MDL:KM-5530;DES:Kyocera Mita KM-5530;" driver="kyocera-km-5530" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera KM-6030" driver="kyocera-km-6030" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera KM-6230" deviceid="MFG:Kyocera Mita;MDL:KM-6230;DES:Kyocera Mita KM-6230;CMD:POSTSCRIPT,PJL,PCL;" driver="kyocera-km-6230" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Kyocera KM-8030" driver="kyocera-km-8030" manufacturer="Kyocera" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier 5622" driver="lanier-5622" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier 5627" driver="lanier-5627" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier 5632" driver="lanier-5632" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier 5635" driver="lanier-5635" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier 5645" driver="lanier-5645" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD0105" driver="lanier-ld0105" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD015" driver="lanier-ld015" manufacturer="Lanier" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD035" driver="lanier-ld035" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD045" driver="lanier-ld045" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD060" driver="lanier-ld060" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD075" driver="lanier-ld075" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD090" driver="lanier-ld090" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD115" driver="lanier-ld115" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD116" driver="lanier-ld116" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD118" driver="lanier-ld118" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD118d" driver="lanier-ld118d" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD120" driver="lanier-ld120" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD120d" driver="lanier-ld120d" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD122" driver="lanier-ld122" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD127" driver="lanier-ld127" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD132" driver="lanier-ld132" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD135" driver="lanier-ld135" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD145" driver="lanier-ld145" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD151" driver="lanier-ld151" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD160" driver="lanier-ld160" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD175" driver="lanier-ld175" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD225" driver="lanier-ld225" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD230" driver="lanier-ld230" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD235" driver="lanier-ld235" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier LD245" driver="lanier-ld245" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP2500/LD125" driver="lanier-ld125" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 1100/LD1100" driver="lanier-ld1100" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 1350/LD1135" driver="lanier-ld1135" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 1600/LD316" driver="lanier-ld316" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 161/LD016" driver="lanier-ld016" manufacturer="Lanier" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 2000/LD320d" driver="lanier-ld320d" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 2510/LD325" driver="lanier-ld325" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 2550B/LD425B" driver="lanier-ld425b" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 2550/LD425" driver="lanier-ld425" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 3010/LD330" driver="lanier-ld330" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 3350B/LD433B" driver="lanier-ld433b" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 3350/LD433" driver="lanier-ld433" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 3500/LD335" driver="lanier-ld335" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 4000B/LD040B" driver="lanier-ld040b" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 4000/LD040" driver="lanier-ld040" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 4500/LD345" driver="lanier-ld345" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 5000B/LD050B" driver="lanier-ld050b" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 5000/LD050" driver="lanier-ld050" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 5500/LD255" driver="lanier-ld255" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 6500/LD265" driver="lanier-ld265" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 7500/LD275" driver="lanier-ld275" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lanier MP 9000/LD190" driver="lanier-ld190" manufacturer="Lanier" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Lexmark 4076" driver="lexmark-4076" manufacturer="Lexmark" model="500" parameters="pcl_inkjet_params" /> + <printer translate="name" name="Lexmark Optra E" driver="lexmark-optra_e" manufacturer="Lexmark" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Lexmark Optra E+" driver="lexmark-optra_eplus" manufacturer="Lexmark" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Lexmark Optra E220" driver="lexmark-optra_e220" manufacturer="Lexmark" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Lexmark Optra E321" deviceid="MFG:Lexmark International;MDL:Lexmark E321;DES:Lexmark E321;CMD:PCL 5 Emulation, PostScript Level 3 For Mac Emulation, NPAP, PJL;" driver="lexmark-optra_e321" manufacturer="Lexmark" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Lexmark Optra E323" driver="lexmark-optra_e323" manufacturer="Lexmark" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Lexmark Valuewriter 300" driver="lexmark-vw_300" manufacturer="Lexmark" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Minolta PagePro 6" deviceid="MFG:MINOLTA;MDL:PagePro 6;CMD:HP ENHANCED PCL5;" driver="minolta-pp_6" manufacturer="Minolta" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Minolta PagePro 6e" driver="minolta-pp_6e" manufacturer="Minolta" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Minolta PagePro 6ex" deviceid="MFG:Minolta;MDL:PagePro 6e;CMD:HP ENHANCED PCL5e,PJL,WinStyler;" driver="minolta-pp_6ex" manufacturer="Minolta" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Minolta PagePro 8" deviceid="MFG:MINOLTA;MDL:PagePro 8;CMD:HP ENHANCED PCL6,PJL;" driver="minolta-pp_8" manufacturer="Minolta" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="Minolta PagePro 8L" deviceid="MFG:Minolta;MDL:PagePro 8L;CMD:PrintGear;PCL;PLJ;" driver="minolta-pp_8l" manufacturer="Minolta" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Minolta PagePro 1100" deviceid="MFG:MINOLTA;MDL:PagePro 1100;CMD:HP ENHANCED PCL6,PJL;" driver="minolta-pp_1100" manufacturer="Minolta" model="62" parameters="pcl_laser_params" /> + <printer translate="name" name="NEC SuperScript 660i" driver="nec-ssc_660i" manufacturer="NEC" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="NEC SuperScript 860" driver="nec-ssc_860" manufacturer="NEC" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="NEC SuperScript 870" deviceid="MFG:NEC;MDL:SuperScript 870;DES:SuperScript 870;CMD:PrintGear,PCL,PJL;" driver="nec-ssc_870" manufacturer="NEC" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="NEC SuperScript 1260" driver="nec-ssc_1260" manufacturer="NEC" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="NEC SuperScript 1400" driver="nec-ssc_1400" manufacturer="NEC" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="NEC SuperScript 1800" deviceid="MFG:NEC;MDL:SuperScript 1800;CMD:PCL6,PCL5E;" driver="nec-ssc_1800" manufacturer="NEC" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG 10515/10518/10512" driver="nrg-10512" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG 2205/2238/2212" driver="nrg-2212" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG 2705/2738/2712" driver="nrg-2712" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG 3205/3238/3212" driver="nrg-3212" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG 3525/3508/3502" driver="nrg-3502" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG 3545/3518/3532" driver="nrg-3532" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG 4525/4508/4502" driver="nrg-4502" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG 4545/4518/4532" driver="nrg-4532" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG 6002/6005/6008" driver="nrg-6008" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG 7502/7505/7508" driver="nrg-7508" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG 9005/9008/9002" driver="nrg-9002" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG DSm415" driver="nrg-dsm415" manufacturer="NRG" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG DSm615" driver="nrg-dsm615" manufacturer="NRG" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG DSm616" driver="nrg-dsm616" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG DSm618" driver="nrg-dsm618" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG DSm618d" driver="nrg-dsm618d" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG DSm620" driver="nrg-dsm620" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG DSm620d" driver="nrg-dsm620d" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG DSm622" driver="nrg-dsm622" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG DSm627" driver="nrg-dsm627" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG DSm632" driver="nrg-dsm632" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG DSm635" driver="nrg-dsm635" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG DSm645" driver="nrg-dsm645" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG DSm651" driver="nrg-dsm651" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG DSm660" driver="nrg-dsm660" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG DSm675" driver="nrg-dsm675" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG DSm725" driver="nrg-dsm725" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG DSm730" driver="nrg-dsm730" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG DSm735" driver="nrg-dsm735" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG DSm745" driver="nrg-dsm745" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 1100" driver="nrg-mp_1100" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 1350" driver="nrg-mp_1350" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 1600" driver="nrg-mp_1600" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 161" driver="nrg-mp_161" manufacturer="NRG" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 2000" driver="nrg-mp_2000" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 2500" driver="nrg-mp_2500" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 2510" driver="nrg-mp_2510" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 2550" driver="nrg-mp_2550" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 2550B" driver="nrg-mp_2550b" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 3010" driver="nrg-mp_3010" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 3350" driver="nrg-mp_3350" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 3350B" driver="nrg-mp_3350b" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 3500" driver="nrg-mp_3500" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 4000" driver="nrg-mp_4000" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 4000B" driver="nrg-mp_4000b" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 4500" driver="nrg-mp_4500" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 5000" driver="nrg-mp_5000" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 5000B" driver="nrg-mp_5000b" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 5500" driver="nrg-mp_5500" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 6500" driver="nrg-mp_6500" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 7500" driver="nrg-mp_7500" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="NRG MP 9000" driver="nrg-mp_9000" manufacturer="NRG" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Oki B401d" driver="oki-b401d" manufacturer="Oki" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Oki B4350" driver="oki-b4350" manufacturer="Oki" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Oki OL400" driver="okidata-ol400" manufacturer="Oki" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Oki OL400e" driver="okidata-ol400e" manufacturer="Oki" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Oki OL400ex" driver="okidata-ol400ex" manufacturer="Oki" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Oki OL410e" driver="okidata-ol410e" manufacturer="Oki" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Oki OL600e" driver="okidata-ol600e" manufacturer="Oki" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Oki OL610e/S" driver="okidata-ol610e_s" manufacturer="Oki" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Oki OL800" driver="okidata-ol800" manufacturer="Oki" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Oki OL810ex" driver="okidata-ol810ex" manufacturer="Oki" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Oki Okipage 6e" deviceid="MFG:OKI DATA CORP;MDL:OKIDATA OKIPAGE 6e;DES:OKIDATA OKIPAGE 6e (HP4P);CMD:ENHANCED PCL5,PJL,EPSONFX,IBMPPR,HIPERWINDOWS;" driver="okidata-okp_6e" manufacturer="Oki" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Oki Okipage 6ex" deviceid="MFG:OKI DATA CORP;MDL:OKIDATA OKIPAGE 6ex;DES:OKIDATA OKIPAGE 6ex (HP4P);CMD:ENHANCED PCL5,PJL,EPSONFX,IBMPR,HIPERWINDOWS;" driver="okidata-okp_6ex" manufacturer="Oki" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Oki Okipage 8p" deviceid="MFG:OKI DATA CORP;MDL:OKIPAGE 8p;DES:OKIPAGE 8p;CMD:PJL,PCLXL,PCL,EPSONFX,IBMPPR;" driver="okidata-okp_8p" manufacturer="Oki" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Oki Okipage 10e" deviceid="MFG:OKI DATA CORP;MDL:OKIPAGE 10e;DES:OKIPAGE 10e;CMD:PJL,PCLXL,PCL,EPSONFX,IBMPPR;" driver="okidata-okp_10e" manufacturer="Oki" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Oki Okipage 10ex" deviceid="MFG:OKI DATA CORP;MDL:OKIPAGE 10ex;DES:OKIPAGE 10ex;CMD:PJL,PCLXL,PCL,EPSONFX,IBMPPR;" driver="okidata-okp_10ex" manufacturer="Oki" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Oki Okipage 14ex" deviceid="MFG:OKI DATA CORP;MDL:OKIPAGE 14ex;DES:OKIPAGE 14ex;CMD:PJL,PCLXL,PCL,EPSONFX,IBMPPR;" driver="okidata-okp_14ex" manufacturer="Oki" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Oki Super 6e" deviceid="MFG:OKI DATA CORP;MDL:OKIPAGE 14ex;DES:OKIPAGE 14ex;CMD:PJL,PCLXL,PCL,EPSONFX,IBMPPR;" driver="okidata-super_6e" manufacturer="Oki" model="4" parameters="pcl_laser_params" /> + <printer translate="name" name="Olivetti JP350S" driver="olivetti-jp350s" manufacturer="Olivetti" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Olivetti PG 306" driver="olivetti-pg_306" manufacturer="Olivetti" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="PCPI 1030" driver="pcpi-1030" manufacturer="PCPI" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Panasonic KX-P4410" driver="panasonic-kx-p4410" manufacturer="Panasonic" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Panasonic KX-P4450" driver="panasonic-kx-p4450" manufacturer="Panasonic" model="3" parameters="pcl_laser_params" /> + <printer translate="name" name="Panasonic KX-P6150" driver="panasonic-kx-p6150" manufacturer="Panasonic" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Panasonic KX-P6500" deviceid="MFG:Panasonic;MDL:KX-P6500;DES:(no such line for this device);CMD:GDI;" driver="panasonic-kx-p6500" manufacturer="Panasonic" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Raven LP-410" driver="raven-lp-410" manufacturer="Raven" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 1022" driver="ricoh-afc_1022" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 1027" driver="ricoh-afc_1027" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 1032" driver="ricoh-afc_1032" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 1035" driver="ricoh-afc_1035" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 1045" driver="ricoh-afc_1045" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 1060" driver="ricoh-afc_1060" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 1075" driver="ricoh-afc_1075" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 1515" driver="ricoh-afc_1515" manufacturer="Ricoh" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 2015" driver="ricoh-afc_2015" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 2016" driver="ricoh-afc_2016" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 2018" driver="ricoh-afc_2018" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 2018D" driver="ricoh-afc_2018d" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 2020" driver="ricoh-afc_2020" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 2020D" driver="ricoh-afc_2020d" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 2022" driver="ricoh-afc_2022" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 2027" driver="ricoh-afc_2027" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 2032" driver="ricoh-afc_2032" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 2035" driver="ricoh-afc_2035" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 2035e" driver="ricoh-afc_2035e" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 2045" driver="ricoh-afc_2045" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 2045e" driver="ricoh-afc_2045e" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 2051" driver="ricoh-afc_2051" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 2060" driver="ricoh-afc_2060" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 2075" driver="ricoh-afc_2075" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 2090" driver="ricoh-afc_2090" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 2105" driver="ricoh-afc_2105" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 220" driver="ricoh-afc_220" manufacturer="Ricoh" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 3025" driver="ricoh-afc_3025" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 3030" driver="ricoh-afc_3030" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 3035" driver="ricoh-afc_3035" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 3045" driver="ricoh-afc_3045" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 401" driver="ricoh-afc_401" manufacturer="Ricoh" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio 700" driver="ricoh-afc_700" manufacturer="Ricoh" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 1100" driver="ricoh-afc_mp_1100" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 1350" driver="ricoh-afc_mp_1350" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 1600" driver="ricoh-afc_mp_1600" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 161" driver="ricoh-afc_mp_161" manufacturer="Ricoh" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 2000" driver="ricoh-afc_mp_2000" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 2500" driver="ricoh-afc_mp_2500" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 2510" driver="ricoh-afc_mp_2510" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 2550" driver="ricoh-afc_mp_2550" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 2550B" driver="ricoh-afc_mp_2550b" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 3010" driver="ricoh-afc_mp_3010" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 3350" driver="ricoh-afc_mp_3350" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 3350B" driver="ricoh-afc_mp_3350b" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 3500" driver="ricoh-afc_mp_3500" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 4000" driver="ricoh-afc_mp_4000" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 4000B" driver="ricoh-afc_mp_4000b" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 4500" driver="ricoh-afc_mp_4500" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 5000" driver="ricoh-afc_mp_5000" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 5000B" driver="ricoh-afc_mp_5000b" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 5500" driver="ricoh-afc_mp_5500" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 6500" driver="ricoh-afc_mp_6500" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 7500" driver="ricoh-afc_mp_7500" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Ricoh Aficio MP 9000" driver="ricoh-afc_mp_9000" manufacturer="Ricoh" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-85" driver="samsung-ml-85" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-1250" driver="samsung-ml-1250" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-1450" deviceid="MFG:Samsung;MDL:ML-1450;" driver="samsung-ml-1450" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-1450PS" driver="samsung-ml-1450ps" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-1650" deviceid="MFG:Samsung;MDL:ML-1650;CMD:PCL5E,PCL6;" driver="samsung-ml-1650" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-1651N" driver="samsung-ml-1651n" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-1750" driver="samsung-ml-1750" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-2150" driver="samsung-ml-2150" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-2150PS" driver="samsung-ml-2150ps" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-2151N" driver="samsung-ml-2151n" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-2151NPS" driver="samsung-ml-2151nps" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-2152W" driver="samsung-ml-2152w" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-2152WPS" driver="samsung-ml-2152wps" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-2250" driver="samsung-ml-2250" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-2550" driver="samsung-ml-2550" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-2551N" driver="samsung-ml-2551n" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-2552W" driver="samsung-ml-2552w" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-4600" driver="samsung-ml-4600" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-5000a" driver="samsung-ml-5000a" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-6000" driver="samsung-ml-6000" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-6100" driver="samsung-ml-6100" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-7000" driver="samsung-ml-7000" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-7000N" driver="samsung-ml-7000n" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-7000P" driver="samsung-ml-7000p" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-7050" driver="samsung-ml-7050" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-7300" driver="samsung-ml-7300" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung ML-7300N" driver="samsung-ml-7300n" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung QL-5100A" driver="samsung-ql-5100a" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Samsung QL-6050" deviceid="MFG:Samsung;MDL:6050;CMD:PCL6;" driver="samsung-ql-6050" manufacturer="Samsung" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 2522" driver="savin-2522" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 2527" driver="savin-2527" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 2532" driver="savin-2532" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 2535/2235" driver="savin-2235" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 2545/2245" driver="savin-2245" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 2560" driver="savin-2560" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 2575" driver="savin-2575" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 3515" driver="savin-3515" manufacturer="Savin" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 40105" driver="savin-40105" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 4015" driver="savin-4015" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 4018" driver="savin-4018" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 4018d" driver="savin-4018d" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 4022" driver="savin-4022" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 4027" driver="savin-4027" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 4035/4135g" driver="savin-4135g" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 4035e/4135eG" driver="savin-4135eg" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 4045/4145g" driver="savin-4145g" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 4045e/4145eG" driver="savin-4145eg" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 4051" driver="savin-4051" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 4060" driver="savin-4060" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 4075" driver="savin-4075" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 4090" driver="savin-4090" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 7025" driver="savin-7025" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 8016" driver="savin-8016" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 8020" driver="savin-8020" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 8020d" driver="savin-8020d" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 8025" driver="savin-8025" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 8025e" driver="savin-8025e" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 8030" driver="savin-8030" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 8030e" driver="savin-8030e" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 8035/8035g" driver="savin-8035g" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 8035e" driver="savin-8035e" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 8045/8045g" driver="savin-8045g" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 8045e" driver="savin-8045e" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 8055" driver="savin-8055" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 8065" driver="savin-8065" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 8075" driver="savin-8075" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 8090" driver="savin-8090" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 8110" driver="savin-8110" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 8135" driver="savin-8135" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 816" driver="savin-816" manufacturer="Savin" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 9016" driver="savin-9016" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 9021d" driver="savin-9021d" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 9025" driver="savin-9025" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 9025b" driver="savin-9025b" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 9033" driver="savin-9033" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 9033b" driver="savin-9033b" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 9040" driver="savin-9040" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 9040b" driver="savin-9040b" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 9050" driver="savin-9050" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Savin 9050b" driver="savin-9050b" manufacturer="Savin" model="61" parameters="pcl_laser_params" /> + <printer translate="name" name="Seiko SpeedJET 200" driver="seiko-sj_200" manufacturer="Seiko" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Sharp AR-161" deviceid="MFG:SHARP;MDL:AR-160/200 series;DES:None;CMD:PCL;" driver="sharp-ar-161" manufacturer="Sharp" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Sharp AR-M257" driver="sharp-ar-m257" manufacturer="Sharp" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Sony IJP-V100" deviceid="MFG:Sony;MDL:All-in-One IJP-V100;CMD:MLC,PCL,PML;" driver="sony-ijp-v100" manufacturer="Sony" model="601" parameters="pcl_inkjet_params" /> + <printer translate="name" name="Star LS-04" driver="star-ls-04" manufacturer="Star" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Star LaserPrinter 8" driver="star-lp_8" manufacturer="Star" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Tally MT908" driver="tally-mt908" manufacturer="Tally" model="3" parameters="pcl_laser_params" /> + <printer translate="name" name="Tektronix Phaser 750DP" driver="tektronix-phaser_750dp" manufacturer="Tektronix" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Tektronix Phaser 750DX" driver="tektronix-phaser_750dx" manufacturer="Tektronix" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Tektronix Phaser 750N" driver="tektronix-phaser_750n" manufacturer="Tektronix" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Tektronix Phaser 750P" driver="tektronix-phaser_750p" manufacturer="Tektronix" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Able 1406" driver="xerox-able_1406" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox DocuPrint 4508" driver="xerox-dp_4508" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox DocuPrint C20" driver="xerox-dp_c20" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox DocuPrint N4512" driver="xerox-dp_n4512" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox DocuPrint N4512PS" driver="xerox-dp_n4512ps" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox DocuPrint P12" deviceid="MFG:XEROX;MDL:DocuPrint P12;DES:Xerox DocuPrint P12;CMD:PrintGear,PCL,PJL;" driver="xerox-dp_p12" manufacturer="Xerox" model="2" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox DocuPrint P1202" deviceid="MFG:Xerox;MDL:DocuPrint;CMD:PCL5E;" driver="xerox-dp_p1202" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox DocuPrint P8e" deviceid="MFG:Xerox;MDL:DocuPrint P8e;CMD:PCL5E2;" driver="xerox-dp_p8e" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Document Centre 400" driver="xerox-dc_400" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 2135" driver="xerox-phaser_2135" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 4400B" driver="xerox-phaser_4400b" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 4400DT" driver="xerox-phaser_4400dt" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 4400DX" driver="xerox-phaser_4400dx" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 4400N" driver="xerox-phaser_4400n" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 4500B" driver="xerox-phaser_4500b" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 4500DT" driver="xerox-phaser_4500dt" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 4500DX" driver="xerox-phaser_4500dx" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 4500N" driver="xerox-phaser_4500n" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 4510B" driver="xerox-phaser_4510b" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 4510DT" driver="xerox-phaser_4510dt" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 4510DX" driver="xerox-phaser_4510dx" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 4510N" driver="xerox-phaser_4510n" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 5500B" driver="xerox-phaser_5500b" manufacturer="Xerox" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 5500DN" driver="xerox-phaser_5500dn" manufacturer="Xerox" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 5500DT" driver="xerox-phaser_5500dt" manufacturer="Xerox" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 5500DX" driver="xerox-phaser_5500dx" manufacturer="Xerox" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 5500N" driver="xerox-phaser_5500n" manufacturer="Xerox" model="64" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 6130N" driver="xerox-phaser_6130n" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 6180DN" driver="xerox-phaser_6180dn" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 6180MFP-D" driver="xerox-phaser_6180mfp-d" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 6200B" driver="xerox-phaser_6200b" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 6200DP" driver="xerox-phaser_6200dp" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 6200DX" driver="xerox-phaser_6200dx" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 6200N" driver="xerox-phaser_6200n" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 6250B" driver="xerox-phaser_6250b" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 6250DP" driver="xerox-phaser_6250dp" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 6250DT" driver="xerox-phaser_6250dt" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 6250DX" driver="xerox-phaser_6250dx" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 6250N" driver="xerox-phaser_6250n" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 6300DN" driver="xerox-phaser_6300dn" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 6300N" driver="xerox-phaser_6300n" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 6350DP" driver="xerox-phaser_6350dp" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 6350DT" driver="xerox-phaser_6350dt" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 6350DX" driver="xerox-phaser_6350dx" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 6360DN" driver="xerox-phaser_6360dn" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 6360DX" driver="xerox-phaser_6360dx" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7300B" driver="xerox-phaser_7300b" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7300DN" driver="xerox-phaser_7300dn" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7300DT" driver="xerox-phaser_7300dt" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7300DX" driver="xerox-phaser_7300dx" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7300N" driver="xerox-phaser_7300n" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7400DN" driver="xerox-phaser_7400dn" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7400DT" driver="xerox-phaser_7400dt" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7400DX" driver="xerox-phaser_7400dx" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7400DXF" driver="xerox-phaser_7400dxf" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7400N" driver="xerox-phaser_7400n" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7700DN" driver="xerox-phaser_7700dn" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7700DX" driver="xerox-phaser_7700dx" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7700GX" driver="xerox-phaser_7700gx" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7750B" driver="xerox-phaser_7750b" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7750DN" driver="xerox-phaser_7750dn" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7750DXF" driver="xerox-phaser_7750dxf" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7750GX" driver="xerox-phaser_7750gx" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7760DN" driver="xerox-phaser_7760dn" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7760DX" driver="xerox-phaser_7760dx" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 7760GX" driver="xerox-phaser_7760gx" manufacturer="Xerox" model="63" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 8400B" driver="xerox-phaser_8400b" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 8400BD" driver="xerox-phaser_8400bd" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 8400DP" driver="xerox-phaser_8400dp" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 8400DX" driver="xerox-phaser_8400dx" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 8400N" driver="xerox-phaser_8400n" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 8500DN" driver="xerox-phaser_8500dn" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 8500N" driver="xerox-phaser_8500n" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 8550DP" driver="xerox-phaser_8550dp" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 8550DT" driver="xerox-phaser_8550dt" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 8550DX" driver="xerox-phaser_8550dx" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox Phaser 8560DN" driver="xerox-phaser_8560dn" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox WorkCentre 7345" driver="xerox-workcentre_7345" manufacturer="Xerox" model="6" parameters="pcl_laser_params" /> + <printer translate="name" name="Xerox WorkCentre M118" deviceid="MFG:XEROX;MDL:WorkCentre M118;DES:XEROX WorkCentre M118;" driver="xerox-wc_m118" manufacturer="Xerox" model="61" parameters="pcl_laser_params" /> </family> <family name="lexmark"> <parameters name="standard_params"> @@ -2823,129 +2854,132 @@ <parameter type="float" name="Gamma">0.5</parameter> <parameter type="float" name="Density">2.0</parameter> </parameters> - <printer translate="name" name="Compaq IJ1200" driver="compaq-ij1200" manufacturer="Compaq" model="10042" parameters="standard_params" foomaticid="Compaq-IJ1200" /> - <printer translate="name" name="Lexmark X73" deviceid="MFG:Lexmark;MDL:Lexmark X73;DES:Lexmark X73;CMD:LNPAP;" driver="lexmark-x73" manufacturer="Lexmark" model="10042" parameters="standard_params" foomaticid="Lexmark-X73" /> - <printer translate="name" name="Lexmark Z42" deviceid="MFG:Lexmark;MDL:Lexmark Z42;DES:Lexmark Z42;CMD:LNPAP;" driver="lexmark-z42" manufacturer="Lexmark" model="10042" parameters="standard_params" foomaticid="Lexmark-Z42" /> - <printer translate="name" name="Lexmark Z43" driver="lexmark-z43" manufacturer="Lexmark" model="10042" parameters="standard_params" foomaticid="Lexmark-Z43" /> - <printer translate="name" name="Lexmark Z52" deviceid="MFG:Lexmark;MDL:Lexmark Z52;DES:Lexmark Z52;" driver="lexmark-z52" manufacturer="Lexmark" model="10052" parameters="standard_params" foomaticid="Lexmark-Z52" /> - <printer translate="name" name="Lexmark Z53" driver="lexmark-z53" manufacturer="Lexmark" model="10052" parameters="standard_params" foomaticid="Lexmark-Z53" /> + <printer translate="name" name="Compaq IJ1200" driver="compaq-ij1200" manufacturer="Compaq" model="10042" parameters="standard_params" /> + <printer translate="name" name="Lexmark X73" deviceid="MFG:Lexmark;MDL:Lexmark X73;DES:Lexmark X73;CMD:LNPAP;" driver="lexmark-x73" manufacturer="Lexmark" model="10042" parameters="standard_params" /> + <printer translate="name" name="Lexmark Z42" deviceid="MFG:Lexmark;MDL:Lexmark Z42;DES:Lexmark Z42;CMD:LNPAP;" driver="lexmark-z42" manufacturer="Lexmark" model="10042" parameters="standard_params" /> + <printer translate="name" name="Lexmark Z43" driver="lexmark-z43" manufacturer="Lexmark" model="10042" parameters="standard_params" /> + <printer translate="name" name="Lexmark Z52" deviceid="MFG:Lexmark;MDL:Lexmark Z52;DES:Lexmark Z52;" driver="lexmark-z52" manufacturer="Lexmark" model="10052" parameters="standard_params" /> + <printer translate="name" name="Lexmark Z53" driver="lexmark-z53" manufacturer="Lexmark" model="10052" parameters="standard_params" /> </family> <family name="dyesub"> <parameters name="nativecopies"> <parameter type="boolean" name="NativeCopies">1</parameter> </parameters> - <printer translate="name" name="Olympus P-10" driver="olympus-p10" manufacturer="Olympus" model="2" foomaticid="Olympus-P-10" /> - <printer translate="name" name="Olympus P-11" driver="olympus-p11" manufacturer="Olympus" model="2" foomaticid="Olympus-P-11" /> - <printer translate="name" name="Olympus P-200" driver="olympus-p200" manufacturer="Olympus" model="4" foomaticid="Olympus-P-200" /> - <printer translate="name" name="Olympus P-300" driver="olympus-p300" manufacturer="Olympus" model="0" foomaticid="Olympus-P-300" /> - <printer translate="name" name="Olympus P-300E" driver="olympus-p300e" manufacturer="Olympus" model="0" foomaticid="Olympus-P-300E" /> - <printer translate="name" name="Olympus P-300U" driver="olympus-p300u" manufacturer="Olympus" model="0" foomaticid="Olympus-P-300U" /> - <printer translate="name" name="Olympus P-330E" driver="olympus-p330e" manufacturer="Olympus" model="0" foomaticid="Olympus-P-330E" /> - <printer translate="name" name="Olympus P-330NE" driver="olympus-p330ne" manufacturer="Olympus" model="0" foomaticid="Olympus-P-330NE" /> - <printer translate="name" name="Olympus P-400" driver="olympus-p400" manufacturer="Olympus" model="1" foomaticid="Olympus-P-400" /> - <printer translate="name" name="Olympus P-440" driver="olympus-p440" manufacturer="Olympus" model="3" foomaticid="Olympus-P-440" /> - <printer translate="name" name="Olympus P-S100" driver="olympus-ps100" manufacturer="Olympus" model="20" foomaticid="Olympus-P-S100" /> - <printer translate="name" name="Canon CP-10" deviceid="MFG:Canon;CMD:Raster3;MDL:CP-10;CLS:PRINTER;DES:Canon CP-10;VER:1.00;" driver="canon-cp10" manufacturer="Canon" model="1002" foomaticid="Canon-CP-10" parameters="nativecopies" /> - <printer translate="name" name="Canon CP-100" deviceid="MFG:Canon;CMD:Raster3;MDL:CP-100;CLS:PRINTER;DES:Canon CP-100;VER:1.00;" driver="canon-cp100" manufacturer="Canon" model="1000" foomaticid="Canon-CP-100" parameters="nativecopies" /> - <printer translate="name" name="Canon CP-200" deviceid="MFG:Canon;CMD:Raster3;MDL:CP-200;CLS:PRINTER;DES:Canon CP-200;VER:1.00;" driver="canon-cp200" manufacturer="Canon" model="1000" foomaticid="Canon-CP-200" parameters="nativecopies" /> - <printer translate="name" name="Canon CP-220" deviceid="MFG:Canon;CMD:Raster3;MDL:CP-220;CLS:PRINTER;DES:Canon CP-220;VER:1.00;" driver="canon-cp220" manufacturer="Canon" model="1001" foomaticid="Canon-CP-220" parameters="nativecopies" /> - <printer translate="name" name="Canon CP-300" deviceid="MFG:Canon;CMD:Raster3;MDL:CP-300;CLS:PRINTER;DES:Canon CP-300;VER:1.00;" driver="canon-cp300" manufacturer="Canon" model="1000" foomaticid="Canon-CP-300" parameters="nativecopies" /> - <printer translate="name" name="Canon CP-330" deviceid="MFG:Canon;CMD:Raster3;MDL:CP-330;CLS:PRINTER;DES:Canon CP-330;VER:1.00;" driver="canon-cp330" manufacturer="Canon" model="1001" foomaticid="Canon-CP-330" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY CP400" deviceid="MFG:Canon;CMD:Raster3;MDL:CP400;CLS:PRINTER;DES:Canon CP400;VER:1.00;" driver="canon-cp400" manufacturer="Canon" model="1001" foomaticid="Canon-SELPHY-CP400" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY CP500" deviceid="MFG:Canon;CMD:Raster3;MDL:CP500;CLS:PRINTER;DES:Canon CP500;VER:1.00;" driver="canon-cp500" manufacturer="Canon" model="1001" foomaticid="Canon-SELPHY-CP500" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY CP510" deviceid="MFG:Canon;CMD:Raster3;MDL:CP510;CLS:PRINTER;DES:Canon CP510;VER:1.00;" driver="canon-cp510" manufacturer="Canon" model="1001" foomaticid="Canon-SELPHY-CP510" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY CP520" driver="canon-cp520" manufacturer="Canon" model="1001" foomaticid="Canon-SELPHY-CP520" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY CP530" deviceid="MFG:Canon;CMD:Raster3;MDL:CP530;CLS:PRINTER;DES:Canon CP530;VER:1.00;" driver="canon-cp530" manufacturer="Canon" model="1001" foomaticid="Canon-SELPHY-CP530" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY CP600" deviceid="MFG:Canon;CMD:Raster3;MDL:CP600;CLS:PRINTER;DES:Canon CP600;VER:1.00;" driver="canon-cp600" manufacturer="Canon" model="1001" foomaticid="Canon-SELPHY-CP600" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY CP710" deviceid="MFG:Canon;CMD:Raster3;MDL:CP710;CLS:PRINTER;DES:Canon CP710;VER:1.00;" driver="canon-cp710" manufacturer="Canon" model="1001" foomaticid="Canon-SELPHY-CP710" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY CP720" deviceid="MFG:Canon;CMD:Raster3;MDL:CP720;CLS:PRINTER;DES:Canon CP720;VER:1.00;" driver="canon-cp720" manufacturer="Canon" model="1001" foomaticid="Canon-SELPHY-CP720" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY CP730" deviceid="MFG:Canon;CMD:Raster3;MDL:CP730;CLS:PRINTER;DES:Canon CP730;VER:1.00;" driver="canon-cp730" manufacturer="Canon" model="1001" foomaticid="Canon-SELPHY-CP730" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY CP740" driver="canon-cp740" manufacturer="Canon" model="1001" foomaticid="Canon-SELPHY-CP740" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY CP750" deviceid="MFG:Canon;CMD:Raster3;MDL:CP750;CLS:PRINTER;DES:Canon CP750;VER:1.00;" driver="canon-cp750" manufacturer="Canon" model="1001" foomaticid="Canon-SELPHY-CP750" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY CP760" deviceid="MFG:Canon;CMD:Raster3;MDL:CP760;CLS:PRINTER;DES:Canon CP760;VER:1.00;" driver="canon-cp760" manufacturer="Canon" model="1001" foomaticid="Canon-SELPHY-CP760" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY CP770" driver="canon-cp770" manufacturer="Canon" model="1001" foomaticid="Canon-SELPHY-CP770" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY CP780" deviceid="MFG:Canon;CMD:Raster3;MDL:CP780;CLS:PRINTER;DES:Canon CP780;VER:1.00;" driver="canon-cp780" manufacturer="Canon" model="1001" foomaticid="Canon-SELPHY-CP780" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY CP790" deviceid="MFG:Canon;CMD:Raster3;MDL:CP790;CLS:PRINTER;DES:Canon CP790;VER:1.00;" driver="canon-cp790" manufacturer="Canon" model="1008" foomaticid="Canon-SELPHY-CP790" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY CP800" deviceid="MFG:Canon;CMD:Raster3;MDL:CP800;CLS:PRINTER;DES:Canon CP800;VER:1.00;" driver="canon-cp800" manufacturer="Canon" model="1009" foomaticid="Canon-SELPHY-CP800" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY CP810" deviceid="MFG:Canon;CMD:Raster3;MDL:CP810;CLS:PRINTER;DES:Canon CP810;VER:3.05;" driver="canon-cp810" manufacturer="Canon" model="1009" foomaticid="Canon-SELPHY-CP810" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY CP820" driver="canon-cp820" manufacturer="Canon" model="1011" foomaticid="Canon-SELPHY-CP820" /> - <printer translate="name" name="Canon SELPHY CP900" deviceid="MFG:Canon;CMD:Raster3;MDL:CP900;CLS:PRINTER;DES:Canon CP900;VER:5.77;" driver="canon-cp900" manufacturer="Canon" model="1010" foomaticid="Canon-SELPHY-CP900" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY CP910" deviceid="MFG:Canon;CMD:Raster3;MDL:CP910;CLS:PRINTER;DES:Canon CP910;VER:1.00;CID:CA_YCC_ICP;" driver="canon-cp910" manufacturer="Canon" model="1011" foomaticid="Canon-SELPHY-CP910" /> - <printer translate="name" name="Canon SELPHY ES1" deviceid="MFG:Canon;CMD:Raster3;MDL:ES1;CLS:PRINTER;DES:Canon SELPHY ES1;VER:1.00;" driver="canon-es1" manufacturer="Canon" model="1003" foomaticid="Canon-SELPHY-ES1" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY ES2" deviceid="MFG:Canon;CMD:Raster3;MDL:ES2;CLS:PRINTER;DES:Canon SELPHY ES2;VER:1.00;" driver="canon-es2" manufacturer="Canon" model="1005" foomaticid="Canon-SELPHY-ES2" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY ES3" deviceid="MFG:Canon;CMD:Raster3;MDL:ES3;CLS:PRINTER;DES:Canon SELPHY ES3;VER:1.00;" driver="canon-es3" manufacturer="Canon" model="1006" foomaticid="Canon-SELPHY-ES3" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY ES20" driver="canon-es20" manufacturer="Canon" model="1005" foomaticid="Canon-SELPHY-ES20" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY ES30" deviceid="MFG:Canon;CMD:Raster3;MDL:ES30;CLS:PRINTER;DES:Canon SELPHY ES30;VER:1.00;" driver="canon-es30" manufacturer="Canon" model="1006" foomaticid="Canon-SELPHY-ES30" parameters="nativecopies" /> - <printer translate="name" name="Canon SELPHY ES40" deviceid="MFG:Canon;CMD:Raster3;MDL:ES40;CLS:PRINTER;DES:Canon SELPHY ES40;VER:1.00;" driver="canon-es40" manufacturer="Canon" model="1007" foomaticid="Canon-SELPHY-ES40" parameters="nativecopies" /> - <printer translate="name" name="Sony UP-DP10" driver="sony-updp10" manufacturer="Sony" model="2000" foomaticid="Sony-UP-DP10" /> - <printer translate="name" name="Sony UP-DR150" deviceid="MFG:Sony;MDL:UP-DR150;DES:Sony UP-DR150;CMD:SONY-Original;CLS:PRINTER" driver="sony-updr150" manufacturer="Sony" model="2001" foomaticid="Sony-UP-DR150" parameters="nativecopies" /> - <printer translate="name" name="Sony DPP-EX5" driver="sony-dppex5" manufacturer="Sony" model="2002" foomaticid="Sony-DPP-EX5" /> - <printer translate="name" name="Sony DPP-EX7" driver="sony-dppex7" manufacturer="Sony" model="2002" foomaticid="Sony-DPP-EX7" /> - <printer translate="name" name="Sony UP-DR100" driver="sony-updr100" manufacturer="Sony" model="2003" foomaticid="Sony-UP-DR100" /> - <printer translate="name" name="Sony UP-DR200" driver="sony-updr200" manufacturer="Sony" model="2004" foomaticid="Sony-UP-DR200" parameters="nativecopies" /> - <printer translate="name" name="Sony UP-CR10L" driver="sony-upcr10l" manufacturer="Sony" model="2005" foomaticid="Sony-UP-CR10L" parameters="nativecopies">EXPERIMENTAL</printer> - <printer translate="name" name="Dai Nippon Printing SL10" driver="dnp-sl10" manufacturer="Dai Nippon Printing" model="2005" foomaticid="DNP-SL10" parameters="nativecopies">EXPERIMENTAL</printer> - <printer translate="name" name="Fujifilm Printpix-CX-400" driver="fujifilm-cx400" manufacturer="Fujifilm" model="3000" foomaticid="Fujifilm-Printpix-CX-400" /> - <printer translate="name" name="Fujifilm Printpix-CX-550" driver="fujifilm-cx550" manufacturer="Fujifilm" model="3001" foomaticid="Fujifilm-Printpix-CX-550" /> - <printer translate="name" name="Fujifilm FinePix-NX-500" driver="fujifilm-nx500" manufacturer="Fujifilm" model="3002" foomaticid="Fujifilm-FinePix-NX-500" /> - <printer translate="name" name="Kodak Easyshare-Printer-Dock" driver="kodak-dock" manufacturer="Kodak" model="4000" foomaticid="Kodak-Easyshare-Printer-Dock" /> - <printer translate="name" name="Kodak EasyShare-G600-Printer-Dock" driver="kodak-g600-dock" manufacturer="Kodak" model="4000" foomaticid="Kodak-EasyShare-G600-Printer-Dock" /> - <printer translate="name" name="Kodak PD-4000" driver="kodak-pd-4000" manufacturer="Kodak" model="4000" foomaticid="Kodak-PD-4000" /> - <printer translate="name" name="Kodak PD-6000" driver="kodak-pd-6000" manufacturer="Kodak" model="4000" foomaticid="Kodak-PD-6000" /> - <printer translate="name" name="Kodak Photo-Printer" driver="kodak-photo-printer" manufacturer="Kodak" model="4000" foomaticid="Kodak-Photo-Printer" /> - <printer translate="name" name="Kodak Photo-Printer-500" driver="kodak-photo-printer-500" manufacturer="Kodak" model="4000" foomaticid="Kodak-Photo-Printer-500" /> - <printer translate="name" name="Kodak Printer-Dock-Plus" driver="kodak-dock-plus" manufacturer="Kodak" model="4000" foomaticid="Kodak-Printer-Dock-Plus" /> - <printer translate="name" name="Kodak Printer-Dock-Plus-S3" driver="kodak-dock-plus-s3" manufacturer="Kodak" model="4000" foomaticid="Kodak-Printer-Dock-Plus-S3" /> - <printer translate="name" name="Kodak 6800" deviceid="MFG:Eastman Kodak Company;CMD:ESC;MDL:Photo Printer 6800;CLS:PRINTER;DES:KODAK Photo Printer 6800;" driver="kodak-6800" manufacturer="Kodak" model="4001" foomaticid="Kodak-6800" parameters="nativecopies" /> - <printer translate="name" name="Kodak 6850" deviceid="MFG:Eastman Kodak Company;CMD:ESC;MDL:Photo Printer 6850;CLS:PRINTER;DES:KODAK Photo Printer 6850;" driver="kodak-6850" manufacturer="Kodak" model="4002" foomaticid="Kodak-6850" parameters="nativecopies" /> - <printer translate="name" name="Kodak 605" deviceid="MFG:Eastman Kodak Company;CMD:SUPCC;MCL:KODAK 605 Photo Printer;CLS:PRINTER;DES:Thermal Dye Photo Printer;" driver="kodak-605" manufacturer="Kodak" model="4003" foomaticid="Kodak-605" parameters="nativecopies" /> - <printer translate="name" name="Kodak 1400" deviceid="MFG:Eastman Kodak Company;CMD:EK1;MDL: 1400 Printer;CLS:Printer;DES:Kodak 1400 Printer;`" driver="kodak-1400" manufacturer="Kodak" model="4004" foomaticid="Kodak-1400" parameters="nativecopies" /> - <printer translate="name" name="Kodak 805" deviceid="MFG:Eastman Kodak Company;CMD:EK2;MDL: KODAK 805 Photo Printer;CLS:Printer;DES:Kodak 805 Photo Printer;" driver="kodak-805" manufacturer="Kodak" model="4005" foomaticid="Kodak-805" parameters="nativecopies" /> - <printer translate="name" name="Kodak 8500" driver="kodak-8500" manufacturer="Kodak" model="4100" foomaticid="Kodak-8500">EXPERIMENTAL</printer> - <printer translate="name" name="Kodak 9810" driver="kodak-9810" manufacturer="Kodak" model="4006" foomaticid="Kodak-9810">EXPERIMENTAL</printer> - <printer translate="name" name="Kodak 8810" driver="kodak-8810" manufacturer="Kodak" model="4007" foomaticid="Kodak-8810">EXPERIMENTAL</printer> - <printer translate="name" name="Kodak 7000" driver="kodak-7000" manufacturer="Kodak" model="4008" foomaticid="Kodak-7000">EXPERIMENTAL</printer> - <printer translate="name" name="Kodak 7010" driver="kodak-7010" manufacturer="Kodak" model="4008" foomaticid="Kodak-7010">EXPERIMENTAL</printer> - <printer translate="name" name="Kodak 7015" driver="kodak-7015" manufacturer="Kodak" model="4009" foomaticid="Kodak-7015">EXPERIMENTAL</printer> - <printer translate="name" name="Mitsubishi CP-3020D" driver="mitsubishi-3020d" manufacturer="Mitsubishi" model="4101" foomaticid="Mitsubishi-3020D">EXPERIMENTAL</printer> - <printer translate="name" name="Mitsubishi CP-3020DU" driver="mitsubishi-3020du" manufacturer="Mitsubishi" model="4101" foomaticid="Mitsubishi-3020DU">EXPERIMENTAL</printer> - <printer translate="name" name="Mitsubishi CP-3020DE" driver="mitsubishi-3020de" manufacturer="Mitsubishi" model="4101" foomaticid="Mitsubishi-3020DE">EXPERIMENTAL</printer> - <printer translate="name" name="Mitsubishi CP-3020DA" driver="mitsubishi-3020da" manufacturer="Mitsubishi" model="4102" foomaticid="Mitsubishi-3020DA">EXPERIMENTAL</printer> - <printer translate="name" name="Mitsubishi CP-3020DAE" driver="mitsubishi-3020dae" manufacturer="Mitsubishi" model="4102" foomaticid="Mitsubishi-3020DAE">EXPERIMENTAL</printer> - <printer translate="name" name="Mitsubishi CP-9550D" deviceid="MFG:MITSUBISHI;CMD:MEL;MDL:CP9550D ;CLS:PRINTER;DES:MITSUBISHI CP9550D" driver="mitsubishi-9550d" manufacturer="Mitsubishi" model="4103" foomaticid="Mitsubishi-9550D" parameters="nativecopies" /> - <printer translate="name" name="Mitsubishi CP-9550DW" driver="mitsubishi-9550dw" manufacturer="Mitsubishi" model="4103" foomaticid="Mitsubishi-9550DW" parameters="nativecopies" /> - <printer translate="name" name="Mitsubishi CP-9550DZ" deviceid="MFG:MITSUBISHI;CMD:MEL;MDL:CP9550DZ;CLS:PRINTER;DES:MITSUBISHI CP9550DZ;" driver="mitsubishi-9550dz" manufacturer="Mitsubishi" model="4103" foomaticid="Mitsubishi-9550DZ" parameters="nativecopies">EXPERIMENTAL</printer> - <printer translate="name" name="Mitsubishi CP-9550DW-S" driver="mitsubishi-9550dw-s" manufacturer="Mitsubishi" model="4103" foomaticid="Mitsubishi-9550DW-S">EXPERIMENTAL</printer> - <printer translate="name" name="Mitsubishi CP-9810D" driver="mitsubishi-9810d" manufacturer="Mitsubishi" model="4104" foomaticid="Mitsubishi-9810D" /> - <printer translate="name" name="Mitsubishi CP-9810DW" driver="mitsubishi-9810dw" manufacturer="Mitsubishi" model="4104" foomaticid="Mitsubishi-9810DW" /> - <printer translate="name" name="Mitsubishi CP-D70DW" deviceid="MFG:MITSUBISHI;CMD:MEL;MDL:CP60D70D707D;CLS:PRINTER;DES:MITSUBISHI CP60D70D707D" driver="mitsubishi-d70dw" manufacturer="Mitsubishi" model="4105" foomaticid="Mitsubishi-D70DW" parameters="nativecopies">EXPERIMENTAL</printer> - <printer translate="name" name="Mitsubishi CP-D707DW" deviceid="MFG:MITSUBISHI;CMD:MEL;MDL:CP60D70D707D;CLS:PRINTER;DES:MITSUBISHI CP60D70D707D" driver="mitsubishi-d707dw" manufacturer="Mitsubishi" model="4105" foomaticid="Mitsubishi-D707DW" parameters="nativecopies">EXPERIMENTAL</printer> - <printer translate="name" name="Mitsubishi CP-K60DW-S" driver="mitsubishi-k60dw" manufacturer="Mitsubishi" model="4106" foomaticid="Mitsubishi-K60DW-S" parameters="nativecopies">EXPERIMENTAL</printer> - <printer translate="name" name="Mitsubishi CP-D80DW" driver="mitsubishi-d80dw" manufacturer="Mitsubishi" model="4107" foomaticid="Mitsubishi-D80DW" parameters="nativecopies">EXPERIMENTAL</printer> - <printer translate="name" name="Kodak 305" deviceid="MFG:KODAK;CMD:KODAK305;MDL:305 Photo Printer;CLS:PRINTER;DES:KODAK 305 Photo Printer" driver="kodak-305" manufacturer="Kodak" model="4108" foomaticid="Kodak-305" parameters="nativecopies">EXPERIMENTAL</printer> - <printer translate="name" name="Shinko CHC-S9045" driver="shinko-chcs9045" manufacturer="Shinko" model="5000" foomaticid="Shinko-CHC-S9045" /> - <printer translate="name" name="Shinko CHC-S2145" deviceid="MFG:SHINKO;CMD:SUPCC;MDL:CHC-S2145;CLS:PRINTER;DES:SHINKO CHC-S2145;" driver="shinko-chcs2145" manufacturer="Shinko" model="5001" foomaticid="Shinko-CHC-S2145" parameters="nativecopies" /> - <printer translate="name" name="Sinfonia S2145/S2" driver="sinfonia-chcs2145" manufacturer="Sinfonia" model="5001" foomaticid="Sinfonia-CHC-S2145" parameters="nativecopies" /> - <printer translate="name" name="Shinko CHC-S1245" driver="shinko-chcs1245" manufacturer="Shinko" model="5002" foomaticid="Shinko-CHC-S1245" parameters="nativecopies">EXPERIMENTAL</printer> - <printer translate="name" name="Sinfonia CHC-S1245/E1" driver="sinfonia-chcs1245" manufacturer="Sinfonia" model="5002" foomaticid="Sinfonia-CHC-S1245" parameters="nativecopies">EXPERIMENTAL</printer> - <printer translate="name" name="Shinko CHC-S6245" driver="shinko-chcs6245" manufacturer="Shinko" model="5003" foomaticid="Shinko-CHC-S6245" parameters="nativecopies">EXPERIMENTAL</printer> - <printer translate="name" name="Sinfonia CHC-S6245/CE1" driver="sinfonia-chcs6245" manufacturer="Sinfonia" model="5003" foomaticid="Sinfonia-CHC-S6245" parameters="nativecopies">EXPERIMENTAL</printer> - <printer translate="name" name="Shinko CHC-S6145" driver="shinko-chcs6145" manufacturer="Shinko" model="5004" foomaticid="Shinko-CHC-S6145" parameters="nativecopies">EXPERIMENTAL</printer> - <printer translate="name" name="Sinfonia CHC-S6145/CS2" deviceid="MFG:SINFONIA;CMD:SUPCC;MDL:CHC-S6145;CLS:PRINTER;DES:Thermal Dye Photo Printer;" driver="sinfonia-chcs6145" manufacturer="Sinfonia" model="5004" foomaticid="Sinfonia-CHC-S6145" parameters="nativecopies">EXPERIMENTAL</printer> - <printer translate="name" name="CIAAT Brava 21" deviceid="MFG:CIAAT;CMD:SUPCC;MDL:BRAVA21;CLS:PRINTER;DES:Thermal Dye Photo Printer;" driver="ciaat-brava-21" manufacturer="CIAAT" model="5005" foomaticid="CIAAT-Brava-21" parameters="nativecopies">EXPERIMENTAL</printer> - <printer translate="name" name="Dai Nippon Printing DS40" deviceid="MANUFACTURER:Dai Nippon Printing ;MODEL:DS40;" driver="dnp-ds40" manufacturer="Dai Nippon Printing" model="6000" foomaticid="DNP-DS40" parameters="nativecopies" /> - <printer translate="name" name="Dai Nippon Printing DS80" deviceid="MANUFACTURER:Dai Nippon Printing ;MODEL:DS80;" driver="dnp-ds80" manufacturer="Dai Nippon Printing" model="6001" foomaticid="DNP-DS80" parameters="nativecopies" /> - <printer translate="name" name="Dai Nippon Printing DSRX1" driver="dnp-dsrx1" deviceid="MANUFACTURER:Dai Nippon Printing ;MODEL:DS-RX1;" manufacturer="Dai Nippon Printing" model="6002" foomaticid="DNP-DSRX1" parameters="nativecopies" /> - <printer translate="name" name="Dai Nippon Printing DS620" driver="dnp-ds620" deviceid="MANUFACTURER:Dai Nippon Printing ;MODEL:DP-DS620;" manufacturer="Dai Nippon Printing" model="6003" foomaticid="DNP-DS620" parameters="nativecopies" /> - <printer translate="name" name="Citizen CX" driver="citizen-cx" deviceid="MANUFACTURER:CITIZEN SYSTEMS ;MODEL:CX;" manufacturer="Citizen" model="6000" foomaticid="Citizen-CX" parameters="nativecopies" /> - <printer translate="name" name="Citizen CX-W" driver="citizen-cx-w" manufacturer="Citizen" model="6001" foomaticid="Citizen-CX-W" parameters="nativecopies" /> - <printer translate="name" name="Citizen CY" driver="citizen-cy" manufacturer="Citizen" model="6002" foomaticid="Citizen-CY" parameters="nativecopies" /> - <printer translate="name" name="Citizen CW-01" driver="citizen-cw-01" manufacturer="Citizen" model="6005" foomaticid="Citizen-CW-01" parameters="nativecopies" /> - <printer translate="name" name="Citizen OP900" driver="citizen-op900" manufacturer="Citizen" model="6005" foomaticid="Citizen-OP900" parameters="nativecopies" /> - <printer translate="name" name="Citizen CW-02" driver="citizen-cw-02" manufacturer="Citizen" model="6000" foomaticid="Citizen-CW-02" parameters="nativecopies">EXPERIMENTAL</printer> - <printer translate="name" name="Citizen OP900II" driver="citizen-op900ii" manufacturer="Citizen" model="6000" foomaticid="Citizen-OP900II" parameters="nativecopies">EXPERIMENTAL</printer> - <printer translate="name" name="Mitsubishi CP-3800DW" driver="mitsubishi-cp-3800dw" manufacturer="Mitsubishi" model="6001" foomaticid="Mitsubishi-CP-3800DW" parameters="nativecopies" /> - <printer translate="name" name="Dai Nippon Printing DS80DX" driver="dnp-ds80dx" manufacturer="Dai Nippon Printing" model="6006" foomaticid="DNP-DS80DX" parameters="nativecopies">EXPERIMENTAL</printer> + <printer translate="name" name="Olympus P-10" driver="olympus-p10" manufacturer="Olympus" model="2" /> + <printer translate="name" name="Olympus P-11" driver="olympus-p11" manufacturer="Olympus" model="2" /> + <printer translate="name" name="Olympus P-200" driver="olympus-p200" manufacturer="Olympus" model="4" /> + <printer translate="name" name="Olympus P-300" driver="olympus-p300" manufacturer="Olympus" model="0" /> + <printer translate="name" name="Olympus P-300E" driver="olympus-p300e" manufacturer="Olympus" model="0" /> + <printer translate="name" name="Olympus P-300U" driver="olympus-p300u" manufacturer="Olympus" model="0" /> + <printer translate="name" name="Olympus P-330E" driver="olympus-p330e" manufacturer="Olympus" model="0" /> + <printer translate="name" name="Olympus P-330NE" driver="olympus-p330ne" manufacturer="Olympus" model="0" /> + <printer translate="name" name="Olympus P-400" driver="olympus-p400" manufacturer="Olympus" model="1" /> + <printer translate="name" name="Olympus P-440" driver="olympus-p440" manufacturer="Olympus" model="3" /> + <printer translate="name" name="Olympus P-S100" driver="olympus-ps100" manufacturer="Olympus" model="20" /> + <printer translate="name" name="Canon CP-10" deviceid="MFG:Canon;CMD:Raster3;MDL:CP-10;CLS:PRINTER;DES:Canon CP-10;VER:1.00;" driver="canon-cp10" manufacturer="Canon" model="1002" parameters="nativecopies" /> + <printer translate="name" name="Canon CP-100" deviceid="MFG:Canon;CMD:Raster3;MDL:CP-100;CLS:PRINTER;DES:Canon CP-100;VER:1.00;" driver="canon-cp100" manufacturer="Canon" model="1000" parameters="nativecopies" /> + <printer translate="name" name="Canon CP-200" deviceid="MFG:Canon;CMD:Raster3;MDL:CP-200;CLS:PRINTER;DES:Canon CP-200;VER:1.00;" driver="canon-cp200" manufacturer="Canon" model="1000" parameters="nativecopies" /> + <printer translate="name" name="Canon CP-220" deviceid="MFG:Canon;CMD:Raster3;MDL:CP-220;CLS:PRINTER;DES:Canon CP-220;VER:1.00;" driver="canon-cp220" manufacturer="Canon" model="1001" parameters="nativecopies" /> + <printer translate="name" name="Canon CP-300" deviceid="MFG:Canon;CMD:Raster3;MDL:CP-300;CLS:PRINTER;DES:Canon CP-300;VER:1.00;" driver="canon-cp300" manufacturer="Canon" model="1000" parameters="nativecopies" /> + <printer translate="name" name="Canon CP-330" deviceid="MFG:Canon;CMD:Raster3;MDL:CP-330;CLS:PRINTER;DES:Canon CP-330;VER:1.00;" driver="canon-cp330" manufacturer="Canon" model="1001" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY CP400" deviceid="MFG:Canon;CMD:Raster3;MDL:CP400;CLS:PRINTER;DES:Canon CP400;VER:1.00;" driver="canon-cp400" manufacturer="Canon" model="1001" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY CP500" deviceid="MFG:Canon;CMD:Raster3;MDL:CP500;CLS:PRINTER;DES:Canon CP500;VER:1.00;" driver="canon-cp500" manufacturer="Canon" model="1001" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY CP510" deviceid="MFG:Canon;CMD:Raster3;MDL:CP510;CLS:PRINTER;DES:Canon CP510;VER:1.00;" driver="canon-cp510" manufacturer="Canon" model="1001" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY CP520" driver="canon-cp520" manufacturer="Canon" model="1001" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY CP530" deviceid="MFG:Canon;CMD:Raster3;MDL:CP530;CLS:PRINTER;DES:Canon CP530;VER:1.00;" driver="canon-cp530" manufacturer="Canon" model="1001" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY CP600" deviceid="MFG:Canon;CMD:Raster3;MDL:CP600;CLS:PRINTER;DES:Canon CP600;VER:1.00;" driver="canon-cp600" manufacturer="Canon" model="1001" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY CP710" deviceid="MFG:Canon;CMD:Raster3;MDL:CP710;CLS:PRINTER;DES:Canon CP710;VER:1.00;" driver="canon-cp710" manufacturer="Canon" model="1001" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY CP720" deviceid="MFG:Canon;CMD:Raster3;MDL:CP720;CLS:PRINTER;DES:Canon CP720;VER:1.00;" driver="canon-cp720" manufacturer="Canon" model="1001" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY CP730" deviceid="MFG:Canon;CMD:Raster3;MDL:CP730;CLS:PRINTER;DES:Canon CP730;VER:1.00;" driver="canon-cp730" manufacturer="Canon" model="1001" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY CP740" driver="canon-cp740" manufacturer="Canon" model="1001" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY CP750" deviceid="MFG:Canon;CMD:Raster3;MDL:CP750;CLS:PRINTER;DES:Canon CP750;VER:1.00;" driver="canon-cp750" manufacturer="Canon" model="1001" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY CP760" deviceid="MFG:Canon;CMD:Raster3;MDL:CP760;CLS:PRINTER;DES:Canon CP760;VER:1.00;" driver="canon-cp760" manufacturer="Canon" model="1001" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY CP770" driver="canon-cp770" manufacturer="Canon" model="1001" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY CP780" deviceid="MFG:Canon;CMD:Raster3;MDL:CP780;CLS:PRINTER;DES:Canon CP780;VER:1.00;" driver="canon-cp780" manufacturer="Canon" model="1001" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY CP790" deviceid="MFG:Canon;CMD:Raster3;MDL:CP790;CLS:PRINTER;DES:Canon CP790;VER:1.00;" driver="canon-cp790" manufacturer="Canon" model="1008" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY CP800" deviceid="MFG:Canon;CMD:Raster3;MDL:CP800;CLS:PRINTER;DES:Canon CP800;VER:1.00;" driver="canon-cp800" manufacturer="Canon" model="1009" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY CP810" deviceid="MFG:Canon;CMD:Raster3;MDL:CP810;CLS:PRINTER;DES:Canon CP810;VER:3.05;" driver="canon-cp810" manufacturer="Canon" model="1009" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY CP820" driver="canon-cp820" manufacturer="Canon" model="1011" /> + <printer translate="name" name="Canon SELPHY CP900" deviceid="MFG:Canon;CMD:Raster3;MDL:CP900;CLS:PRINTER;DES:Canon CP900;VER:5.77;" driver="canon-cp900" manufacturer="Canon" model="1010" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY CP910" deviceid="MFG:Canon;CMD:Raster3;MDL:CP910;CLS:PRINTER;DES:Canon CP910;VER:1.00;CID:CA_YCC_ICP;" driver="canon-cp910" manufacturer="Canon" model="1011" /> + <printer translate="name" name="Canon SELPHY CP1000" driver="canon-cp1000" manufacturer="Canon" model="1011" /> + <printer translate="name" name="Canon SELPHY CP1200" deviceid="MFG:Canon;CMD:Raster3;MDL:SELPHY CP1200;CLS:PRINTER;DES:Canon SELPHY CP1200;VER:1.00;CID:CA_YCC_ICP;" driver="canon-cp1200" manufacturer="Canon" model="1011" /> + <printer translate="name" name="Canon SELPHY ES1" deviceid="MFG:Canon;CMD:Raster3;MDL:ES1;CLS:PRINTER;DES:Canon SELPHY ES1;VER:1.00;" driver="canon-es1" manufacturer="Canon" model="1003" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY ES2" deviceid="MFG:Canon;CMD:Raster3;MDL:ES2;CLS:PRINTER;DES:Canon SELPHY ES2;VER:1.00;" driver="canon-es2" manufacturer="Canon" model="1005" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY ES3" deviceid="MFG:Canon;CMD:Raster3;MDL:ES3;CLS:PRINTER;DES:Canon SELPHY ES3;VER:1.00;" driver="canon-es3" manufacturer="Canon" model="1006" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY ES20" driver="canon-es20" manufacturer="Canon" model="1005" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY ES30" deviceid="MFG:Canon;CMD:Raster3;MDL:ES30;CLS:PRINTER;DES:Canon SELPHY ES30;VER:1.00;" driver="canon-es30" manufacturer="Canon" model="1006" parameters="nativecopies" /> + <printer translate="name" name="Canon SELPHY ES40" deviceid="MFG:Canon;CMD:Raster3;MDL:ES40;CLS:PRINTER;DES:Canon SELPHY ES40;VER:1.00;" driver="canon-es40" manufacturer="Canon" model="1007" parameters="nativecopies" /> + <printer translate="name" name="Sony UP-DP10" driver="sony-updp10" manufacturer="Sony" model="2000" /> + <printer translate="name" name="Sony UP-DR150" deviceid="MFG:Sony;MDL:UP-DR150;DES:Sony UP-DR150;CMD:SONY-Original;CLS:PRINTER" driver="sony-updr150" manufacturer="Sony" model="2001" parameters="nativecopies" /> + <printer translate="name" name="Sony DPP-EX5" driver="sony-dppex5" manufacturer="Sony" model="2002" /> + <printer translate="name" name="Sony DPP-EX7" driver="sony-dppex7" manufacturer="Sony" model="2002" /> + <printer translate="name" name="Sony UP-DR100" driver="sony-updr100" manufacturer="Sony" model="2003" /> + <printer translate="name" name="Sony UP-DR200" driver="sony-updr200" manufacturer="Sony" model="2004" parameters="nativecopies" /> + <printer translate="name" name="Sony UP-CR10L" driver="sony-upcr10l" manufacturer="Sony" model="2005" parameters="nativecopies">EXPERIMENTAL</printer> + <printer translate="name" name="Dai Nippon Printing SL10" driver="dnp-sl10" manufacturer="Dai Nippon Printing" model="2005" parameters="nativecopies">EXPERIMENTAL</printer> + <printer translate="name" name="Fujifilm Printpix-CX-400" driver="fujifilm-cx400" manufacturer="Fujifilm" model="3000" /> + <printer translate="name" name="Fujifilm Printpix-CX-550" driver="fujifilm-cx550" manufacturer="Fujifilm" model="3001" /> + <printer translate="name" name="Fujifilm FinePix-NX-500" driver="fujifilm-nx500" manufacturer="Fujifilm" model="3002" /> + <printer translate="name" name="Kodak Easyshare-Printer-Dock" driver="kodak-dock" manufacturer="Kodak" model="4000" /> + <printer translate="name" name="Kodak EasyShare-G600-Printer-Dock" driver="kodak-g600-dock" manufacturer="Kodak" model="4000" /> + <printer translate="name" name="Kodak PD-4000" driver="kodak-pd-4000" manufacturer="Kodak" model="4000" /> + <printer translate="name" name="Kodak PD-6000" driver="kodak-pd-6000" manufacturer="Kodak" model="4000" /> + <printer translate="name" name="Kodak Photo-Printer" driver="kodak-photo-printer" manufacturer="Kodak" model="4000" /> + <printer translate="name" name="Kodak Photo-Printer-500" driver="kodak-photo-printer-500" manufacturer="Kodak" model="4000" /> + <printer translate="name" name="Kodak Printer-Dock-Plus" driver="kodak-dock-plus" manufacturer="Kodak" model="4000" /> + <printer translate="name" name="Kodak Printer-Dock-Plus-S3" driver="kodak-dock-plus-s3" manufacturer="Kodak" model="4000" /> + <printer translate="name" name="Kodak 6800" deviceid="MFG:Eastman Kodak Company;CMD:ESC;MDL:Photo Printer 6800;CLS:PRINTER;DES:KODAK Photo Printer 6800;" driver="kodak-6800" manufacturer="Kodak" model="4001" parameters="nativecopies" /> + <printer translate="name" name="Kodak 6850" deviceid="MFG:Eastman Kodak Company;CMD:ESC;MDL:Photo Printer 6850;CLS:PRINTER;DES:KODAK Photo Printer 6850;" driver="kodak-6850" manufacturer="Kodak" model="4002" parameters="nativecopies" /> + <printer translate="name" name="Kodak 605" deviceid="MFG:Eastman Kodak Company;CMD:SUPCC;MCL:KODAK 605 Photo Printer;CLS:PRINTER;DES:Thermal Dye Photo Printer;" driver="kodak-605" manufacturer="Kodak" model="4003" parameters="nativecopies" /> + <printer translate="name" name="Kodak 1400" deviceid="MFG:Eastman Kodak Company;CMD:EK1;MDL: 1400 Printer;CLS:Printer;DES:Kodak 1400 Printer;`" driver="kodak-1400" manufacturer="Kodak" model="4004" parameters="nativecopies" /> + <printer translate="name" name="Kodak 805" deviceid="MFG:Eastman Kodak Company;CMD:EK2;MDL: KODAK 805 Photo Printer;CLS:Printer;DES:Kodak 805 Photo Printer;" driver="kodak-805" manufacturer="Kodak" model="4005" parameters="nativecopies" /> + <printer translate="name" name="Kodak 8500" driver="kodak-8500" manufacturer="Kodak" model="4100">EXPERIMENTAL</printer> + <printer translate="name" name="Kodak 9810" driver="kodak-9810" manufacturer="Kodak" model="4006">EXPERIMENTAL</printer> + <printer translate="name" name="Kodak 8810" driver="kodak-8810" manufacturer="Kodak" model="4007">EXPERIMENTAL</printer> + <printer translate="name" name="Kodak 7000" driver="kodak-7000" manufacturer="Kodak" model="4008">EXPERIMENTAL</printer> + <printer translate="name" name="Kodak 7010" driver="kodak-7010" manufacturer="Kodak" model="4008">EXPERIMENTAL</printer> + <printer translate="name" name="Kodak 7015" driver="kodak-7015" manufacturer="Kodak" model="4009">EXPERIMENTAL</printer> + <printer translate="name" name="Mitsubishi CP-3020D" driver="mitsubishi-3020d" manufacturer="Mitsubishi" model="4101">EXPERIMENTAL</printer> + <printer translate="name" name="Mitsubishi CP-3020DU" driver="mitsubishi-3020du" manufacturer="Mitsubishi" model="4101">EXPERIMENTAL</printer> + <printer translate="name" name="Mitsubishi CP-3020DE" driver="mitsubishi-3020de" manufacturer="Mitsubishi" model="4101">EXPERIMENTAL</printer> + <printer translate="name" name="Mitsubishi CP-3020DA" driver="mitsubishi-3020da" manufacturer="Mitsubishi" model="4102">EXPERIMENTAL</printer> + <printer translate="name" name="Mitsubishi CP-3020DAE" driver="mitsubishi-3020dae" manufacturer="Mitsubishi" model="4102">EXPERIMENTAL</printer> + <printer translate="name" name="Mitsubishi CP-9550D" deviceid="MFG:MITSUBISHI;CMD:MEL;MDL:CP9550D ;CLS:PRINTER;DES:MITSUBISHI CP9550D" driver="mitsubishi-9550d" manufacturer="Mitsubishi" model="4103" parameters="nativecopies" /> + <printer translate="name" name="Mitsubishi CP-9550DW" driver="mitsubishi-9550dw" manufacturer="Mitsubishi" model="4103" parameters="nativecopies" /> + <printer translate="name" name="Mitsubishi CP-9550DZ" deviceid="MFG:MITSUBISHI;CMD:MEL;MDL:CP9550DZ;CLS:PRINTER;DES:MITSUBISHI CP9550DZ;" driver="mitsubishi-9550dz" manufacturer="Mitsubishi" model="4103" parameters="nativecopies">EXPERIMENTAL</printer> + <printer translate="name" name="Mitsubishi CP-9550DW-S" driver="mitsubishi-9550dw-s" manufacturer="Mitsubishi" model="4103" parameters="nativecopies">EXPERIMENTAL</printer> + <printer translate="name" name="Mitsubishi CP-9810D" driver="mitsubishi-9810d" manufacturer="Mitsubishi" model="4104" /> + <printer translate="name" name="Mitsubishi CP-9810DW" driver="mitsubishi-9810dw" manufacturer="Mitsubishi" model="4104" /> + <printer translate="name" name="Mitsubishi CP-D70DW" deviceid="MFG:MITSUBISHI;CMD:MEL;MDL:CP60D70D707D;CLS:PRINTER;DES:MITSUBISHI CP60D70D707D" driver="mitsubishi-d70dw" manufacturer="Mitsubishi" model="4105" parameters="nativecopies">EXPERIMENTAL</printer> + <printer translate="name" name="Mitsubishi CP-D707DW" deviceid="MFG:MITSUBISHI;CMD:MEL;MDL:CP60D70D707D;CLS:PRINTER;DES:MITSUBISHI CP60D70D707D" driver="mitsubishi-d707dw" manufacturer="Mitsubishi" model="4105" parameters="nativecopies">EXPERIMENTAL</printer> + <printer translate="name" name="Mitsubishi CP-K60DW-S" driver="mitsubishi-k60dw" manufacturer="Mitsubishi" model="4106" parameters="nativecopies">EXPERIMENTAL</printer> + <printer translate="name" name="Mitsubishi CP-D80DW" driver="mitsubishi-d80dw" manufacturer="Mitsubishi" model="4107" parameters="nativecopies">EXPERIMENTAL</printer> + <printer translate="name" name="Kodak 305" deviceid="MFG:KODAK;CMD:KODAK305;MDL:305 Photo Printer;CLS:PRINTER;DES:KODAK 305 Photo Printer" driver="kodak-305" manufacturer="Kodak" model="4108" parameters="nativecopies">EXPERIMENTAL</printer> + <printer translate="name" name="Mitsubishi CP-D90DW" driver="mitsubishi-d90dw" manufacturer="Mitsubishi" model="4109" parameters="nativecopies">EXPERIMENTAL</printer> + <printer translate="name" name="Shinko CHC-S9045" driver="shinko-chcs9045" manufacturer="Shinko" model="5000" /> + <printer translate="name" name="Shinko CHC-S2145" deviceid="MFG:SHINKO;CMD:SUPCC;MDL:CHC-S2145;CLS:PRINTER;DES:SHINKO CHC-S2145;" driver="shinko-chcs2145" manufacturer="Shinko" model="5001" parameters="nativecopies" /> + <printer translate="name" name="Sinfonia S2145/S2" driver="sinfonia-chcs2145" manufacturer="Sinfonia" model="5001" parameters="nativecopies" /> + <printer translate="name" name="Shinko CHC-S1245" driver="shinko-chcs1245" manufacturer="Shinko" model="5002" parameters="nativecopies">EXPERIMENTAL</printer> + <printer translate="name" name="Sinfonia CHC-S1245/E1" driver="sinfonia-chcs1245" manufacturer="Sinfonia" model="5002" parameters="nativecopies">EXPERIMENTAL</printer> + <printer translate="name" name="Shinko CHC-S6245" driver="shinko-chcs6245" manufacturer="Shinko" model="5003" parameters="nativecopies">EXPERIMENTAL</printer> + <printer translate="name" name="Sinfonia CHC-S6245/CE1" driver="sinfonia-chcs6245" manufacturer="Sinfonia" model="5003" parameters="nativecopies">EXPERIMENTAL</printer> + <printer translate="name" name="Shinko CHC-S6145" driver="shinko-chcs6145" manufacturer="Shinko" model="5004" parameters="nativecopies" /> + <printer translate="name" name="Sinfonia CHC-S6145/CS2" deviceid="MFG:SINFONIA;CMD:SUPCC;MDL:CHC-S6145;CLS:PRINTER;DES:Thermal Dye Photo Printer;" driver="sinfonia-chcs6145" manufacturer="Sinfonia" model="5004" parameters="nativecopies" /> + <printer translate="name" name="CIAAT Brava 21" deviceid="MFG:CIAAT;CMD:SUPCC;MDL:BRAVA21;CLS:PRINTER;DES:Thermal Dye Photo Printer;" driver="ciaat-brava-21" manufacturer="CIAAT" model="5005" parameters="nativecopies" /> + <printer translate="name" name="Dai Nippon Printing DS40" deviceid="MANUFACTURER:Dai Nippon Printing ;MODEL:DS40;" driver="dnp-ds40" manufacturer="Dai Nippon Printing" model="6000" parameters="nativecopies" /> + <printer translate="name" name="Dai Nippon Printing DS80" deviceid="MANUFACTURER:Dai Nippon Printing ;MODEL:DS80;" driver="dnp-ds80" manufacturer="Dai Nippon Printing" model="6001" parameters="nativecopies" /> + <printer translate="name" name="Dai Nippon Printing DSRX1" driver="dnp-dsrx1" deviceid="MANUFACTURER:Dai Nippon Printing ;MODEL:DS-RX1;" manufacturer="Dai Nippon Printing" model="6002" parameters="nativecopies" /> + <printer translate="name" name="Dai Nippon Printing DS620" driver="dnp-ds620" deviceid="MANUFACTURER:Dai Nippon Printing ;MODEL:DP-DS620;" manufacturer="Dai Nippon Printing" model="6003" parameters="nativecopies" /> + <printer translate="name" name="Citizen CX" driver="citizen-cx" deviceid="MANUFACTURER:CITIZEN SYSTEMS ;MODEL:CX;" manufacturer="Citizen" model="6000" parameters="nativecopies" /> + <printer translate="name" name="Citizen CX-W" driver="citizen-cx-w" manufacturer="Citizen" model="6001" parameters="nativecopies" /> + <printer translate="name" name="Citizen CY" driver="citizen-cy" manufacturer="Citizen" model="6002" parameters="nativecopies" /> + <printer translate="name" name="Citizen CW-01" driver="citizen-cw-01" manufacturer="Citizen" model="6005" parameters="nativecopies" /> + <printer translate="name" name="Citizen OP900" driver="citizen-op900" manufacturer="Citizen" model="6005" parameters="nativecopies" /> + <printer translate="name" name="Citizen CW-02" driver="citizen-cw-02" manufacturer="Citizen" model="6000" parameters="nativecopies">EXPERIMENTAL</printer> + <printer translate="name" name="Citizen OP900II" driver="citizen-op900ii" manufacturer="Citizen" model="6000" parameters="nativecopies">EXPERIMENTAL</printer> + <printer translate="name" name="Mitsubishi CP-3800DW" driver="mitsubishi-cp-3800dw" manufacturer="Mitsubishi" model="6001" parameters="nativecopies" /> + <printer translate="name" name="Dai Nippon Printing DS80DX" driver="dnp-ds80dx" manufacturer="Dai Nippon Printing" model="6006" parameters="nativecopies">EXPERIMENTAL</printer> </family> <family name="raw"> <printer translate="name" name="RAW DATA 16 bit" driver="raw-data-16" manufacturer="" model="0" /> |