From 1e262a8cc1cf97459682cfb0dfeacdda532ec585 Mon Sep 17 00:00:00 2001 From: June McEnroe Date: Wed, 14 Feb 2018 15:24:53 -0500 Subject: Add gfxx DUMP_ALL --- bin/gfxx.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/bin/gfxx.c b/bin/gfxx.c index c52c5f0d..6ccb17cb 100644 --- a/bin/gfxx.c +++ b/bin/gfxx.c @@ -362,7 +362,11 @@ static void pngDump(uint32_t *src, size_t srcWidth, size_t srcHeight) { if (error) err(EX_IOERR, "%s", pngPath); } -static bool dump; +static enum { + DUMP_NONE, + DUMP_ONE, + DUMP_ALL, +} dump; void draw(uint32_t *buf, size_t bufWidth, size_t bufHeight) { memset(buf, 0, 4 * bufWidth * bufHeight); @@ -373,7 +377,7 @@ void draw(uint32_t *buf, size_t bufWidth, size_t bufHeight) { drawBits(&it); } if (dump) pngDump(buf, bufWidth, bufHeight); - dump = false; + if (dump == DUMP_ONE) dump = DUMP_NONE; } static void palSample(void) { @@ -420,7 +424,8 @@ bool input(char in) { size_t row = width * pixel; switch (in) { case 'q': return false; - break; case 'x': dump = true; + break; case 'x': dump = DUMP_ONE; + break; case 'X': dump ^= DUMP_ALL; break; case 'o': formatOptions(); printf("%s\n", options); break; case '[': if (!space--) space = COLOR__MAX - 1; break; case ']': if (++space == COLOR__MAX) space = 0; -- cgit 1.4.1