Commit graph

58 commits

Author SHA1 Message Date
Solomon Peachy 854b25d05a kodak6800: Dump tone curve status too, and use some constants. 2015-08-27 21:41:47 -04:00
Solomon Peachy c2c423e773 kodak68x0: Move all command/response handling into a dedicated function
Also, the print command sends a response.  Wait for it instead of
sleeping, which is both faster and more reliable!
2015-08-27 21:14:09 -04:00
Solomon Peachy 540144e5e2 kodak68x00: move a bunch of DEBUG->INFO messages. 2015-08-25 22:58:38 -04:00
Solomon Peachy 5dda0018d2 all: Get rid of a little more getopt detritus. 2015-08-25 22:47:26 -04:00
Solomon Peachy d2b9ce6d3e kodak68x0: Major updates.
Printer shares considerable commonality with Shinko S1245

   * Revamped error detection
   * Greatly enhanced status decoding
   * Full ability to properly pipeline jobs
   * Ability to cancel a job in progress

Printer shares considerble commonality with Shinko S1245.
2015-08-25 20:33:41 -04:00
Solomon Peachy 5d3109a05a kodak68xx: Figured out job status (remaining prints, etc)
Now fast return mode does something, as without it we wait until all
copies are printed.  Also removed a few delays that weren't necessary.
2015-08-24 22:24:46 -04:00
Solomon Peachy b343d56f1e all: Get rid of the remainder of the old two-stage cmdline parsing
All backend->cmdline_arg() invocations are done with intent to execute!
2015-08-24 18:49:51 -04:00
Solomon Peachy 183bca83a1 kodak6x80: Query media at attach time. 2015-08-24 18:49:48 -04:00
Solomon Peachy cc87cd1cc3 all: Add some print quantity range checks where we can.
Most backends don't verify against remaining media though.
2015-08-20 23:22:35 -04:00
Solomon Peachy 175f6a52d8 all: For printers that automatically generate copies, get rid of
leftover manual copy handling code.

The exception is the dnp backend, it needs do use manual copies under
some situations.
2015-08-20 23:13:52 -04:00
Solomon Peachy 65f6138ce4 kodak6800: Update comments. 2015-08-18 00:13:29 -04:00
Solomon Peachy 9089aefa26 kodsk6800: Enable fast return 2015-08-13 21:21:14 -04:00
Solomon Peachy db0c7d8b99 all: Eliminate the multi-stage cmdline parsing.
Unfortunately this means we lose the '-B backend' method, but the
overall control flow is much, much simpler now.
2015-08-13 21:09:56 -04:00
Solomon Peachy de8a32424c all: Unified approach to extra_vid/pid/type
This required a modification to all attach() methods.

Also, fix canonselphy's parsing/attachment code.
2015-08-12 22:56:29 -04:00
Solomon Peachy 2181ae04b9 all: Clean up a small pile of warnings that clang-analyzer found. 2015-07-04 11:03:52 -04:00
Solomon Peachy 992e551a02 all: Fix command like parsing when the argument has an option.
This was a longstanding bug.  Oops.
2015-06-30 21:33:02 -04:00
Solomon Peachy 24c3550feb all: Ensure all malloc() failures are caught and logged. 2015-06-23 20:48:52 -04:00
Solomon Peachy b731dc04f8 Update copyright notice. 2015-01-05 21:39:22 -05:00
Solomon Peachy f7fe250f33 kodak68x0: minor documentation updates. 2014-12-05 23:02:06 -05:00
Solomon Peachy 06d779d3c5 kodak68x0: Fix a compile problem that slopped through. 2014-12-05 22:56:20 -05:00
Solomon Peachy de43fa7337 kodak68x0: Cleaner error code reporting. 2014-12-05 22:49:02 -05:00
Solomon Peachy 7ff83de9f1 kodak68x0: Detect printer errors. Or at least we recognise
"Control Error 25". Whatever that means.
2014-12-05 22:01:36 -05:00
Solomon Peachy 81e9e5d722 kodak6800: Cleanups relating to media detection and reporting print sizes 2014-10-04 11:55:56 -04:00
Solomon Peachy 356f909167 kodak6800: Fix an inverted test that broke the kodak6800. 2014-07-14 16:22:26 -04:00
Solomon Peachy 21b169c664 kodak6800: Eliminate a now-dead enum. 2014-07-13 08:19:29 -04:00
Solomon Peachy d63e129376 kodak6800: Eliminate the state machine.
...Now it's a linear flow, and much simpler.
2014-07-09 19:31:49 -04:00
Solomon Peachy 6a73b0820e kodak6800: Doc update and more sanity checks. 2014-07-08 21:31:10 -04:00
Solomon Peachy 0244c757db Udpate documentation, plus another shoutout to LiveLink for their
support in making this stuff possible.
2014-06-03 20:43:31 -04:00
Solomon Peachy 1f96096ca9 kodak68x0: Major rework on state machine, considerably more robust now.
Prints 4x6s reliably, yay.

Detects more error conditions, yay.

Still need to decode printer status better..
2014-06-03 20:38:21 -04:00
Solomon Peachy fe3dcaffcd kodak68x0: Use printer to generate multiple copies. 2014-06-03 20:38:03 -04:00
Solomon Peachy 65b40b8e1a kodak68x0: First step in some major internal rework.
Separate out media detection, add a function for decodable status
queries.

...I'll probably end up scrapping most of the state machine in the end.
2014-06-02 22:16:28 -04:00
Solomon Peachy 27c8af05d9 kodak68x0: Fix bug in media query command, and more decoding of the
status message.
2014-05-30 19:08:47 -04:00
Solomon Peachy 63e7585d77 kodak68x0: Validate print sizes against list returned by printer.
Also handle errors in the mdia response more sanely.
2014-04-26 20:20:07 -04:00
Solomon Peachy ddd0d254be kodak6800/kodak605: convert to CUPS_BACKEND_* return codes. 2014-04-25 11:34:53 -04:00
Solomon Peachy eba5a43d6e kodak6800: Rename a function. No functional change. 2014-04-19 11:33:50 -04:00
Solomon Peachy 9f0738644c Remove obsolete comment. 2014-04-13 15:12:56 -04:00
Solomon Peachy c3f08b8abc kodak68x0: Properly (I hope) decode the media query response
Also, initial work on decoding the printer status query response
2014-04-12 12:41:09 -04:00
Solomon Peachy 158cb50128 kodak605/6800: Use the greater of printjob.copies and cups.copies.
Also put in experimental code in the '6800 backend that uses the printer
to generate copies.  (Unsure if the printers actually support it...)
2014-02-15 08:37:57 -05:00
Solomon Peachy 1faa032ea6 backends: Revamp cmdline args so you can specify multiple backend args at once. 2014-02-11 22:45:14 -05:00
Solomon Peachy 5f8780cc3c More cppcheck-driven fixes. Mainly a bunch of memory leaks. 2014-02-11 20:11:33 -05:00
Solomon Peachy d7db0bbdbe Massive overhaul of command line handling.
Completely untested with real printers.

That happens tonight!  :)
2014-02-10 20:10:36 -05:00
Solomon Peachy 34e3b64fc4 all: Get rid of the now-obsolete 'multipage_capable' flag. 2014-01-30 21:37:07 -05:00
Solomon Peachy 6c335ea1e4 Update copyright notice; it's 2014 now! 2014-01-23 16:07:25 -05:00
Solomon Peachy 6acc8b553c backends: say "## copies remaining" to differentiate between pages. 2014-01-22 09:10:34 -05:00
Solomon Peachy 4aa050f695 backends: Fix a double-free error in all backends.
Since we always call read_parse() we always free the data buffers.  Make
sure we set them to NULL or we will try to double-free them when we
terminate normally.
2014-01-21 20:34:00 -05:00
Solomon Peachy 2eb20f90f4 backends: A 0-length read when doing our inital header load is
and EOF, so treat it as such and don't error out.
2014-01-20 19:41:52 -05:00
Solomon Peachy d7d60b7191 backends: Enhance to add multipage capabilities.
DNP ds40/ds80 and Sony UP-DR150/200 backends do NOT support this yet.

Next up is to commit the core.
2014-01-17 22:54:25 -05:00
Solomon Peachy 817b6b04fc all: Handle short reads when loading in initial printjob header. 2014-01-13 18:30:30 -05:00
Solomon Peachy 82c72fcd99 Add a 'C' size test print for the Canon SELPHY ES1. 2014-01-13 05:41:48 -05:00
Solomon Peachy 1888254860 all: Move to using the common read_data() instead of direct libusb functions. 2013-12-21 22:55:33 -05:00