shinko6145: Hopefully fix a bug printing 8x10" sizes.

master
Solomon Peachy 2 years ago
parent 3c51ebaa6f
commit 955cee5098
  1. 6
      README
  2. 42
      backend_shinkos6245.c

@ -64,6 +64,7 @@
Shinko CHC-S1245 (aka Sinfonia E1 and DNP Q8)
Shinko CHC-S2145 (aka Sinfonia S2)
Shinko CHC-S6145 (aka Sinfonia CS2)
Shinko CHC-S6245 (aka Sinfonia CE1)
Sony UP-CR10L (aka DNP DS-SL10)
Sony UP-DR80MD
Sony UP-DR150
@ -94,7 +95,6 @@
Olmec OP900
Shinko CHC-S2245 (aka Sinfonia S3)
Shinko CHC-S6145-5A (aka Sinfonia CS2-c)
Shinko CHC-S6245 (aka Sinfonia CE1)
Sony UP-CR20L (aka DNP DS-SL20)
Sony UP-DR80
@ -731,7 +731,7 @@
technical and legal limitations are acceptible to you, we
recommend you use these official supported libraries.
* libS6145ImageReProcess and libS2245ImageReProocess -- GPL'd
* libS6145ImageReProcess and libS2245ImageReProcess -- GPL'd
re-implementations of the Sinfonia algorithms, available as
source. They are drop-in replacement that appears to generate
identical output to the proprietary Sinfonia libraries.
@ -809,11 +809,11 @@
Verified supported printers:
Kodak 8810
Shinko CHC-S6245 (aka "Sinfonia CE1")
Work-in-process printers:
HiTi P910L
Shinko CHC-S6245 (aka "Sinfonia CE1")
Valid commands:

@ -1135,29 +1135,27 @@ static int shinkos6245_main_loop(void *vctx, const void *vjob) {
}
}
#if 0 /* Doesn't work on EK8810. Not sure about S6245 */
int i;
/* Validate print sizes */
for (i = 0; i < ctx->media.count ; i++) {
/* Look for matching media */
if (ctx->media.items[i].columns == job->jp.columns &&
ctx->media.items[i].rows == job->jp.rows)
break;
}
if (i == ctx->media.count) {
ERROR("Incorrect media loaded for print!\n");
return CUPS_BACKEND_HOLD;
}
#else
if (ctx->media.ribbon_code != RIBBON_8x12 &&
ctx->media.ribbon_code != RIBBON_8x12K &&
job->jp.rows > 3024) {
ERROR("Incorrect media loaded for print!\n");
return CUPS_BACKEND_HOLD;
if (ctx->dev.conn->type == P_KODAK_8810) {
if (ctx->media.ribbon_code != RIBBON_8x12K &&
job->jp.rows > 3024) { // 3036 on 6245
ERROR("Incorrect media loaded for print!\n");
return CUPS_BACKEND_HOLD;
}
} else {
int i;
/* Validate print sizes */
for (i = 0; i < ctx->media.count ; i++) {
/* Look for matching media */
if (ctx->media.items[i].columns == job->jp.columns &&
ctx->media.items[i].rows == job->jp.rows)
break;
}
if (i == ctx->media.count) {
ERROR("Incorrect media loaded for print!\n");
return CUPS_BACKEND_HOLD;
}
}
#endif
/* Send Set Time */
if (ctx->dev.conn->type != P_KODAK_8810) {
struct sinfonia_settime_cmd *settime = (struct sinfonia_settime_cmd *)cmdbuf;
@ -1456,7 +1454,7 @@ static const char *shinkos6245_prefixes[] = {
const struct dyesub_backend shinkos6245_backend = {
.name = "Sinfonia CHC-S6245 / Kodak 8810",
.version = "0.37" " (lib " LIBSINFONIA_VER ")",
.version = "0.38" " (lib " LIBSINFONIA_VER ")",
.uri_prefixes = shinkos6245_prefixes,
.cmdline_usage = shinkos6245_cmdline,
.cmdline_arg = shinkos6245_cmdline_arg,

Loading…
Cancel
Save