Solomon Peachy
bc746cc56b
dnpds40: Handful of improvements:
...
* RX1 also supports querying MQTY_DEFAULT
* Don't query resolution, return last print status only.
* Query Media Class
* Query Ribbon ID code
* Query 300 and 600dpi color checksum data independently for all models
2015-07-11 15:12:47 -04:00
Solomon Peachy
30d9b050df
dsnpds40: 6*4.5 prints can be rewound, and are presumably legal on 6x8 media.
2015-07-06 17:47:19 -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
c9c3cb859a
dnpds40: Fix help text.
2015-06-30 21:35:05 -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
14af6acbb9
dnpds40: Decode sensor information as much as possible.
2015-06-30 20:51:30 -04:00
Solomon Peachy
24c3550feb
all: Ensure all malloc() failures are caught and logged.
2015-06-23 20:48:52 -04:00
Solomon Peachy
980fada366
dnpds40: Max printjob size was too small.
...
Resulted in 8x12 @600dpi prints failing to fully parse due to buffer overflows.
Also added a log message when we fail to read things.
2015-06-23 19:40:35 -04:00
Solomon Peachy
19ce36f65b
dnpds40: Distinguish between soft (user-correctable) and fatal errors.
2015-06-23 19:25:23 -04:00
Solomon Peachy
476318bbec
dnpds40: Don't repeat media query.
2015-06-22 23:55:48 -04:00
Solomon Peachy
189631d9b4
dnpds40: Add some #ifdefs
2015-06-22 23:51:17 -04:00
Solomon Peachy
2cce68aa81
dnpds40: Minor update.
2015-06-22 23:48:30 -04:00
Solomon Peachy
64a85a4a42
dnpds40: Push media query into early attachment code.
...
Also, move all sanity checks into the job parsing function, out of the
main loop. Only stuff like remaining media, rewind, etc belong in the
main loop.
2015-06-22 23:32:48 -04:00
Solomon Peachy
d63c075015
dnpds40: correct media offset.
2015-06-22 19:26:23 -04:00
Solomon Peachy
a2bd3946d1
dnpds40: Display total media quantity *before* remaining prints.
2015-06-22 18:58:19 -04:00
Solomon Peachy
f90f2ba558
dnpds40: Add support for 6x4.5 and 6x4.5*2 prints
2015-06-22 18:46:26 -04:00
Solomon Peachy
9f69513f8a
dnpds40: DS620 bugfixes. Fix 6x9 detection, and color data checksum.
2015-06-21 13:49:28 -04:00
Solomon Peachy
7e56920868
dnpds40: Bugfixes. Typo in version checking. Double free in main
...
loop. Log remaining prints on status page. Multicut detection fixes.
2015-06-20 16:33:39 -04:00
Solomon Peachy
b57b415bbe
dnpds40: Add USB VID/PID for the DNP DS620
...
In theory, the DS620 is now fully supported. Just needs some testing.
2015-06-19 13:47:43 -04:00
Solomon Peachy
3e08415a81
dnpds40: Disable PQTY query until we can figure out its use.
2015-06-17 22:59:01 -04:00
Solomon Peachy
a2584443b5
dnpds40: Query serial number and version just once, at attachment time.
...
Also add disabled code that stores and restores the last matte status.
2015-06-17 22:57:31 -04:00
Solomon Peachy
f5484d0573
dnpds40: Add standby mode set for DS620 printers.
2015-06-17 21:02:51 -04:00
Solomon Peachy
504ff4cd37
dnpds40: Decode the standby status code.
2015-06-17 20:55:29 -04:00
Solomon Peachy
b1905b15ca
dnpds40: Log when we detect the DS620 being in standby.
2015-06-17 20:53:22 -04:00
Solomon Peachy
68a64d544b
dnpds80: Fix a couple of comments, and RX1 has its own type now.
2015-06-16 20:26:27 -04:00
Solomon Peachy
df4437f275
dnpds40: Correct remaining print count.
2015-06-16 18:54:58 -04:00
Solomon Peachy
26bffc806c
...
2015-06-16 18:47:58 -04:00
Solomon Peachy
c4a36dbc2f
dnpds40: Add support for DS620-specific multicut-types
2015-06-16 18:47:12 -04:00
Solomon Peachy
dc86a3a345
whitespace cleanup
2015-06-14 15:28:20 -04:00
Solomon Peachy
e373d06760
dnpds40: Query remaining media to see if we can complete job
...
* This lets us properly halt the queue if the media has run out
* Print a warning if we can start, but have insufficient media to finish
2015-06-14 11:33:08 -04:00
Solomon Peachy
7b8844daa9
dnpds40: Query DS620-specific configuration flags.
...
* Media end keep mode
* Report serial number in USB descriptor
* Standby delay time
Still need to allow them to be set
2015-06-14 09:23:02 -04:00
Solomon Peachy
15a8bd7761
dnpds40: Add Color data version/checksum fetches for DS620.
2015-06-14 09:15:24 -04:00
Solomon Peachy
9b52766140
dnpds40: Add support for DS620 media rewind
...
Also:
* sanity-check FULL_CUTTER
* detect standby support.
Note that Gutenprint still needs updating for DS620.
2015-06-14 09:05:55 -04:00
Solomon Peachy
e635d804e9
dnpds40: Handle (and sanity-check) 3.5x5*2 prints.
...
still needs work on Gutenprint.
2015-06-13 22:34:54 -04:00
Solomon Peachy
000f6aa1cc
dnpds40: Query firmware version, and sanity-check print job against it.
...
Error out if the firmware doesn't support requested job -- eg matte
printing, or 2x6 printing. Also, only allow 2x6 cuts on 6x4 or 6x8
prints.
2015-06-13 17:20:19 -04:00
Solomon Peachy
a53eb4c09d
dnpds40: Validate horizontal size to determine if job is for DS80 or everything else.
2015-06-13 12:25:45 -04:00
Solomon Peachy
c661edaff0
dnpds40: Don't perform job sanity checks if there is no job!
2015-06-13 12:06:33 -04:00
Solomon Peachy
d7e2685a0f
dnpds40: Be more flexible with the multicut validation.
...
It's primarily used for media/buffer validation and optimization, so if
it's missing use the most conservative settings and warn the user.
Newer gutenprint (5.2.11-pre) won't trigger this.
2015-06-13 12:01:08 -04:00
Solomon Peachy
b6d6351bbd
dnpds40: Improve error message WRT multicut.
2015-06-11 08:42:52 -04:00
Solomon Peachy
95651e7685
dnpds40: Handle the presence (or lack thereof) of the BUFFCNTRL
...
and QTY commands in the data stream.
2015-06-11 08:41:25 -04:00
Solomon Peachy
4e3282377f
dnpds40: Start trying to tokenize the sensor data.
...
Also add placeholders for the DS80DX and DS620.
2015-06-10 23:37:27 -04:00
Solomon Peachy
8c4be91f64
dnpds40: Move the MULTICUT detection to earlier in the process.
...
Basically, we abort as soon as we know it's missing.
2015-06-09 08:33:13 -04:00
Solomon Peachy
338da49377
dnpds40: Media lot code is ASCII.
2015-06-08 23:45:06 -04:00
Solomon Peachy
5d376819d2
dnpds40: Update Media Lot Code query to reflect full data width.
2015-06-08 23:40:04 -04:00
Solomon Peachy
460cce639a
dnpds40: Turn on resumption of print job when a soft error is resolved.
...
(ie when we run out of media, resume printing when we continue)
Also implement a couple of minor cleanups.
Still to come: Query printer version, and sanity-check features. Also
perhaps query the remaining media before a print?
2015-06-08 23:17:12 -04:00
Solomon Peachy
0edced1c9f
dnpds40: Sanity-check printjob type against loaded media.
...
Also cleanly abort the job if the printer kicks back a data/mediatype
error.
2015-06-08 08:06:18 -04:00
Solomon Peachy
fbb4cdf441
dnpds40: Fix errors in the free buffer detection code.
...
Some other code rearrangements too.
2015-05-31 18:00:39 -04:00
Solomon Peachy
b731dc04f8
Update copyright notice.
2015-01-05 21:39:22 -05:00
Solomon Peachy
e84afdb816
dnpds40: Mitsubishi CP3800 uses the same VID/PID as the DNP DS80
2014-12-03 00:10:53 -05:00
Solomon Peachy
60540baf0e
dnpds40: Get rid of the CW01/OP900 entries, it's not handled in this backend.
2014-10-29 22:11:46 -04:00