diff options
author | Solomon Peachy <pizza@shaftnet.org> | 2018-09-26 21:05:47 -0400 |
---|---|---|
committer | Solomon Peachy <pizza@shaftnet.org> | 2018-09-26 21:55:29 -0400 |
commit | 64bd2ff920f4903ef4ca55529d538ea37ca4c669 (patch) | |
tree | 2a569482a4d43930bc3f4444f45d4826f1c228ba | |
parent | 2d061350b20156a8b989886bf9c4b5d5d22bb827 (diff) | |
download | selphy_print-64bd2ff920f4903ef4ca55529d538ea37ca4c669.tar.gz selphy_print-64bd2ff920f4903ef4ca55529d538ea37ca4c669.tar.bz2 selphy_print-64bd2ff920f4903ef4ca55529d538ea37ca4c669.zip |
mitsu98xx: Fix problem with printing matte on 9810/9820
-rw-r--r-- | backend_mitsu9550.c | 16 | ||||
-rwxr-xr-x | regression-gp.csv | 67 |
2 files changed, 75 insertions, 8 deletions
diff --git a/backend_mitsu9550.c b/backend_mitsu9550.c index 9a74462..b898c5a 100644 --- a/backend_mitsu9550.c +++ b/backend_mitsu9550.c @@ -303,7 +303,7 @@ static int mitsu98xx_fillmatte(struct mitsu9550_printjob *job) int fd, i; uint32_t j, remain; - DEBUG("Reading %d bytes of matte data from disk (%d/%d)\n", job->cols * job->rows, job->cols, LAMINATE_STRIDE); + DEBUG("Reading %d bytes of matte data from disk (%d/%d)\n", job->cols * job->rows * 2, job->cols, LAMINATE_STRIDE); fd = open(MITSU_M98xx_LAMINATE_FILE, O_RDONLY); if (fd < 0) { WARNING("Unable to open matte lamination data file '%s'\n", MITSU_M98xx_LAMINATE_FILE); @@ -319,8 +319,8 @@ static int mitsu98xx_fillmatte(struct mitsu9550_printjob *job) matte->cmd[3] = 0x10; matte->row_offset = 0; matte->col_offset = 0; - matte->cols = job->hdr1.cols; - matte->rows = job->hdr1.rows; + matte->cols = cpu_to_be16(job->hdr1.cols); + matte->rows = cpu_to_be16(job->hdr1.rows); job->datalen += sizeof(struct mitsu9550_plane); /* Read in the matte data plane */ @@ -833,8 +833,10 @@ hdr_done: memcpy(job->databuf + job->datalen, buf, 4); job->datalen += 4; - /* Unless we have a matte plane following, we're done */ - if (job->hdr1.matte != 0x01) + /* Unless we have a raw matte plane following, + we're done */ + if (job->hdr1.matte != 0x01 || + !job->is_raw) break; remain = sizeof(buf); } else { @@ -1200,7 +1202,7 @@ static int mitsu9550_main_loop(void *vctx, const void *vjob) { int i, remain, planelen; planelen = job->rows * job->cols * 2; - remain = (job->hdr1.matte ? 3 : 4) * (planelen + sizeof(struct mitsu9550_plane)) + sizeof(struct mitsu9550_cmd); + remain = (job->hdr1.matte ? 4 : 3) * (planelen + sizeof(struct mitsu9550_plane)) + sizeof(struct mitsu9550_cmd) * (job->hdr1.matte? 2 : 1); newbuf = malloc(remain); if (!newbuf) { ERROR("Memory allocation Failure!\n"); @@ -1736,7 +1738,7 @@ static const char *mitsu9550_prefixes[] = { /* Exported */ struct dyesub_backend mitsu9550_backend = { .name = "Mitsubishi CP9xxx family", - .version = "0.41", + .version = "0.42", .uri_prefixes = mitsu9550_prefixes, .cmdline_usage = mitsu9550_cmdline, .cmdline_arg = mitsu9550_cmdline_arg, diff --git a/regression-gp.csv b/regression-gp.csv index fafe92d..d71b284 100755 --- a/regression-gp.csv +++ b/regression-gp.csv @@ -165,7 +165,72 @@ mitsubishi-p95d,mitsup95d,0x06d3,0x3b10,,PageSize=w284h284;StpComment=DateTime mitsubishi-p95d,mitsup95d,0x06d3,0x3b10,,PageSize=w284h284;StpComment=Date mitsubishi-p95d,mitsup95d,0x06d3,0x3b10,,PageSize=w284h284;StpComment=Settings # -# mitsu9550, mitsu9550s, mitsu9600, mitsu9800, mitsu9810 +mitsubishi-9550dw,mitsu9550,0x06d3,0x03a1,0x2,PageSize=w288h432 +mitsubishi-9550dw,mitsu9550,0x06d3,0x03a1,0x2,PageSize=w288h432-div2 +mitsubishi-9550dw,mitsu9550,0x06d3,0x03a1,0x6,PageSize=w432h576 +mitsubishi-9550dw,mitsu9550,0x06d3,0x03a1,0x5,PageSize=w432h612 +mitsubishi-9550dw,mitsu9550,0x06d3,0x03a1,0x5,PageSize=w432h648 +mitsubishi-9550dw,mitsu9550,0x06d3,0x03a1,0x1,PageSize=B7 +mitsubishi-9550dw,mitsu9550,0x06d3,0x03a1,0x4,PageSize=w360h504 +mitsubishi-9550dw,mitsu9550,0x06d3,0x03a1,0x1,PageSize=B7;StpPrintSpeed=Fine +mitsubishi-9550dw,mitsu9550,0x06d3,0x03a1,0x1,PageSize=B7;StpPrintSpeed=FineDeep +mitsubishi-9550dw,mitsu9550,0x06d3,0x03a1,0x1,PageSize=B7;StpPrintSpeed=SuperFine +mitsubishi-9550dw-s,mitsu9550,0x06d3,0x03a5,0x2,PageSize=w288h432 +mitsubishi-9550dw-s,mitsu9550,0x06d3,0x03a5,0x2,PageSize=w288h432-div2 +mitsubishi-9550dw-s,mitsu9550,0x06d3,0x03a5,0x5,PageSize=w432h576 +mitsubishi-9550dw-s,mitsu9550,0x06d3,0x03a5,0x5,PageSize=w432h612 +mitsubishi-9550dw-s,mitsu9550,0x06d3,0x03a5,0x5,PageSize=w432h648 +mitsubishi-9550dw-s,mitsu9550,0x06d3,0x03a5,0x4,PageSize=B7 +mitsubishi-9550dw-s,mitsu9550,0x06d3,0x03a5,0x4,PageSize=w360h504 +mitsubishi-9550dw-s,mitsu9550,0x06d3,0x03a5,0x4,PageSize=B7;StpPrintSpeed=Fine +mitsubishi-9550dw-s,mitsu9550,0x06d3,0x03a5,0x4,PageSize=B7;StpPrintSpeed=FineDeep +mitsubishi-9550dw-s,mitsu9550,0x06d3,0x03a5,0x4,PageSize=B7;StpPrintSpeed=SuperFine +mitsubishi-9600dw,mitsu9600,0x06d3,0x03a9,0x2,PageSize=w288h432;Resolution=300x300dpi +mitsubishi-9600dw,mitsu9600,0x06d3,0x03a9,0x6,PageSize=w432h576;Resolution=300x300dpi +mitsubishi-9600dw,mitsu9600,0x06d3,0x03a9,0x5,PageSize=w432h612;Resolution=300x300dpi +mitsubishi-9600dw,mitsu9600,0x06d3,0x03a9,0x5,PageSize=w432h648;Resolution=300x300dpi +mitsubishi-9600dw,mitsu9600,0x06d3,0x03a9,0x4,PageSize=B7;Resolution=300x300dpi +mitsubishi-9600dw,mitsu9600,0x06d3,0x03a9,0x4,PageSize=w360h504;Resolution=300x300dpi +mitsubishi-9600dw,mitsu9600,0x06d3,0x03a9,0x2,PageSize=w288h432;Resolution=600x600dpi +mitsubishi-9600dw,mitsu9600,0x06d3,0x03a9,0x6,PageSize=w432h576;Resolution=600x600dpi +mitsubishi-9600dw,mitsu9600,0x06d3,0x03a9,0x5,PageSize=w432h612;Resolution=600x600dpi +mitsubishi-9600dw,mitsu9600,0x06d3,0x03a9,0x5,PageSize=w432h648;Resolution=600x600dpi +mitsubishi-9600dw,mitsu9600,0x06d3,0x03a9,0x4,PageSize=B7;Resolution=600x600dpi +mitsubishi-9600dw,mitsu9600,0x06d3,0x03a9,0x4,PageSize=w360h504;Resolution=600x600dpi +mitsubishi-9800dw,mitsu9800,0x06d3,0x03ad,0x2,PageSize=w288h432 +mitsubishi-9800dw,mitsu9800,0x06d3,0x03ad,0x6,PageSize=w432h576 +mitsubishi-9800dw,mitsu9800,0x06d3,0x03ad,0x5,PageSize=w432h612 +mitsubishi-9800dw,mitsu9800,0x06d3,0x03ad,0x5,PageSize=w432h648 +mitsubishi-9800dw,mitsu9800,0x06d3,0x03ad,0x5,PageSize=w432h648;StpUseLUT=True +mitsubishi-9800dw,mitsu9800,0x06d3,0x03ad,0x5,PageSize=w432h648;StpUseLUT=False +mitsubishi-9800dw,mitsu9800,0x06d3,0x03ad,0x4,PageSize=B7 +mitsubishi-9800dw,mitsu9800,0x06d3,0x03ad,0x4,PageSize=B7;StpPrintSpeed=Fine +mitsubishi-9800dw,mitsu9800,0x06d3,0x03ad,0x4,PageSize=B7;StpPrintSpeed=FineHG +mitsubishi-9800dw,mitsu9800,0x06d3,0x03ad,0x4,PageSize=B7;StpPrintSpeed=SuperFine +mitsubishi-9800dw,mitsu9800,0x06d3,0x03ad,0x4,PageSize=w360h504 +mitsubishi-9800dw-s,mitsu9800s,0x06d3,0x03ae,0x2,PageSize=w288h432 +mitsubishi-9800dw-s,mitsu9800s,0x06d3,0x03ae,0x5,PageSize=w432h576 +mitsubishi-9800dw-s,mitsu9800s,0x06d3,0x03ae,0x5,PageSize=w432h612 +mitsubishi-9800dw-s,mitsu9800s,0x06d3,0x03ae,0x5,PageSize=w432h648 +mitsubishi-9800dw-s,mitsu9800s,0x06d3,0x03ae,0x4,PageSize=B7 +mitsubishi-9800dw-s,mitsu9800s,0x06d3,0x03ae,0x4,PageSize=w360h504 +mitsubishi-9810dw,mitsu9810,0x06d3,0x3b21,0x2,PageSize=w288h432 +mitsubishi-9810dw,mitsu9810,0x06d3,0x3b21,0x6,PageSize=w432h576 +mitsubishi-9810dw,mitsu9810,0x06d3,0x3b21,0x5,PageSize=w432h612 +mitsubishi-9810dw,mitsu9810,0x06d3,0x3b21,0x5,PageSize=w432h648 +mitsubishi-9810dw,mitsu9810,0x06d3,0x3b21,0x5,PageSize=w432h648;StpUseLUT=True +mitsubishi-9810dw,mitsu9810,0x06d3,0x3b21,0x5,PageSize=w432h648;StpUseLUT=False +mitsubishi-9810dw,mitsu9810,0x06d3,0x3b21,0x4,PageSize=B7 +mitsubishi-9810dw,mitsu9810,0x06d3,0x3b21,0x4,PageSize=w360h504 +mitsubishi-9810dw,mitsu9810,0x06d3,0x3b21,0x2,PageSize=w288h432;StpLaminate=Matte +mitsubishi-9810dw,mitsu9810,0x06d3,0x3b21,0x6,PageSize=w432h576;StpLaminate=Matte +mitsubishi-9810dw,mitsu9810,0x06d3,0x3b21,0x5,PageSize=w432h612;StpLaminate=Matte +mitsubishi-9810dw,mitsu9810,0x06d3,0x3b21,0x5,PageSize=w432h648;StpLaminate=Matte +mitsubishi-9810dw,mitsu9810,0x06d3,0x3b21,0x4,PageSize=B7;StpLaminate=Matte +mitsubishi-9810dw,mitsu9810,0x06d3,0x3b21,0x4,PageSize=w360h504;StpLaminate=Matte +mitsubishi-9810dw,mitsu9810,0x06d3,0x3b21,0x4,PageSize=B7;StpPrintSpeed=Fine +mitsubishi-9810dw,mitsu9810,0x06d3,0x3b21,0x4,PageSize=B7;StpPrintSpeed=FineHG +mitsubishi-9810dw,mitsu9810,0x06d3,0x3b21,0x4,PageSize=B7;StpPrintSpeed=SuperFine # # mitsu70x, dnpds40, magicard # |