DNP: Placeholder for the QW410 1.10 firmware features
Adds support for 4x4.5, 4.5x3, 4.5x4" prints. Not sure of the details.
This commit is contained in:
parent
9c93ee1091
commit
9420bef7e1
|
@ -108,6 +108,7 @@ struct dnpds40_ctx {
|
|||
int supports_2x6;
|
||||
int supports_3x5x2;
|
||||
int supports_a4x6;
|
||||
int supports_45_34;
|
||||
int supports_matte;
|
||||
int supports_finematte;
|
||||
int supports_luster;
|
||||
|
@ -185,8 +186,11 @@ struct dnpds40_cmd {
|
|||
#define MULTICUT_A4x5X2 43
|
||||
|
||||
#define MULTICUT_4x4 47
|
||||
// #define MULTICUT_4x4_5 XXX
|
||||
#define MULTICUT_4x6 48
|
||||
#define MULTICUT_4x8 49
|
||||
// #define MULTICUT_4_5x3 XXX
|
||||
// #define MULTICUT_4_5x4 XXX
|
||||
#define MULTICUT_4_5x4_5 50
|
||||
#define MULTICUT_4_5x6 51
|
||||
#define MULTICUT_4_5x8 52
|
||||
|
@ -1059,6 +1063,8 @@ static int dnpds40_attach(void *vctx, struct dyesub_connection *conn, uint8_t jo
|
|||
ctx->supports_mediaoffset = 1;
|
||||
ctx->supports_mediaclassrfid = 1;
|
||||
ctx->supports_systime = 1;
|
||||
if (FW_VER_CHECK(1,10))
|
||||
ctx->supports_45_34 = 1;
|
||||
break;
|
||||
default:
|
||||
ERROR("Unknown printer type %d\n", ctx->conn->type);
|
||||
|
@ -1883,6 +1889,7 @@ parsed:
|
|||
case 151: // 4x8, QW410
|
||||
if (job->multicut != MULTICUT_4x4 &&
|
||||
job->multicut != MULTICUT_4x6 &&
|
||||
// XXX job->multicut != MULTICUT_4x4_5 &&
|
||||
job->multicut != MULTICUT_4x8) {
|
||||
ERROR("Incorrect media for job loaded (%u vs %u)\n", ctx->media, job->multicut);
|
||||
dnpds40_cleanup_job(job);
|
||||
|
@ -1891,6 +1898,8 @@ parsed:
|
|||
break;
|
||||
case 160: // 4.5x6, QW410
|
||||
if (job->multicut != MULTICUT_4_5x4_5 &&
|
||||
// XXX job->multicut != MULTICUT_4_5x4 &&
|
||||
// XXX job->multicut != MULTICUT_4_5x3 &&
|
||||
job->multicut != MULTICUT_4_5x6) {
|
||||
ERROR("Incorrect media for job loaded (%u vs %u)\n", ctx->media, job->multicut);
|
||||
dnpds40_cleanup_job(job);
|
||||
|
@ -2053,6 +2062,14 @@ parsed:
|
|||
dnpds40_cleanup_job(job);
|
||||
return CUPS_BACKEND_CANCEL;
|
||||
}
|
||||
#if 0 // XXX
|
||||
if (!ctx->supports_45_34 &&
|
||||
(job->multicut == MULTICUT_45_3 || job->multicut == MULTICUT_45_4 || job->multicut == MULTICUT_45_4)) {
|
||||
ERROR("Printer does not support 4.5x3, 4.5x4, or 4x4.5 prints, aborting!\n");
|
||||
dnpds40_cleanup_job(job);
|
||||
return CUPS_BACKEND_CANCEL;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (job->multicut == MULTICUT_6x9 && !ctx->supports_6x9) {
|
||||
ERROR("Printer does not support 6x9 prints, aborting!\n");
|
||||
|
|
Loading…
Reference in New Issue