From 666d7880fb56268b84e5dc282077ab1205be567f Mon Sep 17 00:00:00 2001 From: root Date: Wed, 16 Mar 2016 20:50:13 +0000 Subject: works --- code/hpgl.c | 129 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 129 insertions(+) create mode 100644 code/hpgl.c (limited to 'code/hpgl.c') diff --git a/code/hpgl.c b/code/hpgl.c new file mode 100644 index 0000000..f9436b4 --- /dev/null +++ b/code/hpgl.c @@ -0,0 +1,129 @@ +#include +#include +#include + + +void +pos (int x, int y, int b) +{ + int16_t lr[2]; + int i; + + + lr[0] = 3 * y + 10000; + lr[1] = 15000 - x * 3; + + lr[0] &= ~1; + lr[1] &= ~1; + + if (!b) + lr[1] |= 1; + + + fprintf (stderr, "%6d %6d %d\n", x, y, b); + + for (i = 0; i < 15; ++i) + { + fwrite (lr, sizeof (lr), 1, stdout); + } +} + + +int +main (int argc, char *argv[]) +{ + char c; + char buf[1024]; + int ic, len; + int commas; + int beam = 0, oldbeam = 0; + int x, y; + + buf[0] = 0; + len = 0; + commas = 0; + + while ((ic = getchar ()) != EOF) + { + c = ic; + if ((c == ' ') || (c == '\t')) + continue; + + buf[len++] = c; + buf[len] = 0; + +// fprintf(stderr,"A>%s