diff --git a/backend_mitsud90.c b/backend_mitsud90.c index b62fda6..e85f834 100644 --- a/backend_mitsud90.c +++ b/backend_mitsud90.c @@ -1,7 +1,7 @@ /* * Mitsubishi CP-D90DW Photo Printer CUPS backend * - * (c) 2019-2021 Solomon Peachy + * (c) 2019-2023 Solomon Peachy * * The latest version of this program can be found at: * @@ -190,7 +190,7 @@ struct mitsud90_job_hdr { uint8_t numcuts; /* # of cuts (0-3) but 0-8 legal */ /*@0x10*/ struct { - uint16_t position; // @ center? + uint16_t position; // BE, @ center uint8_t margincut; /* 0 for double cut, 1 for single */ uint8_t zeropad; } cutlist[8] __attribute__((packed)); /* 3 is current legal max */ @@ -238,11 +238,11 @@ struct mitsud90_job_footer { } __attribute__((packed)); struct mitsud90_memcheck { - uint8_t hdr[4]; /* 1b 47 44 33 */ - uint8_t unk[2]; /* 00 33 */ + uint8_t hdr[6]; /* 1b 47 44 33 00 33 */ uint16_t cols; /* BE */ uint16_t rows; /* BE */ - uint8_t unk_b[4]; /* 64 00 00 01 */ + uint8_t waittime; /* 0-100 */ + uint8_t unk[3]; /* 00 00 01 */ uint8_t zero_fill[498]; } __attribute__((packed)); @@ -716,6 +716,7 @@ static void mitsud90_cleanup_job(const void *vjob) /* Sanity check some stuff */ STATIC_ASSERT(sizeof(struct mitsud90_job_hdr) == 512); +STATIC_ASSERT(sizeof(struct mitsud90_memcheck) == 512); STATIC_ASSERT(sizeof(struct mitsud90_plane_hdr) == 512); static int mitsud90_main_loop(void *vctx, const void *vjob, int wait_for_return); @@ -1284,7 +1285,7 @@ top: return 4; } if (mem_resp.size_bad || mem_resp.mem_bad == 0xff) { - ERROR("Printer reported bad print params (%02x)\n", mem_resp.size_bad); + ERROR("Printer reported bad print params (%02x/%02x)\n", mem_resp.size_bad, mem_resp.mem_bad); return CUPS_BACKEND_CANCEL; } if (mem_resp.mem_bad) { @@ -1998,7 +1999,7 @@ static const char *mitsud90_prefixes[] = { /* Exported */ const struct dyesub_backend mitsud90_backend = { .name = "Mitsubishi CP-D90/CP-M1", - .version = "0.37" " (lib " LIBMITSU_VER ")", + .version = "0.38" " (lib " LIBMITSU_VER ")", .uri_prefixes = mitsud90_prefixes, .cmdline_arg = mitsud90_cmdline_arg, .cmdline_usage = mitsud90_cmdline,