From 688296ecd33780ac73ca7d42806f2423b9126671 Mon Sep 17 00:00:00 2001 From: Julian Blake Kongslie Date: Sun, 18 Apr 2021 16:07:26 -0700 Subject: Less noisy file format conversion. --- tool/p8bin2hex.c | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/tool/p8bin2hex.c b/tool/p8bin2hex.c index 8d28d19..4ef10fc 100644 --- a/tool/p8bin2hex.c +++ b/tool/p8bin2hex.c @@ -14,6 +14,8 @@ * 00.xxx.xxx data lo (bits 5:0 contain data 5:0) * * + * FIXME: RIM format currently almost always fails with bad checksum + * * BIN format: * 10.000.000 leader/trailer (at least an inch of these) * 11.011.000 "field" (bits 6:4 specify address 14:12) @@ -47,14 +49,11 @@ load(FILE *fp) case Addr: u += c; a |= c; - fprintf(stderr, " %04o: address %06o\n", c, a & 077777); s = Fetch; break; case Data: u += c; d |= 0x8000 | c; - /* fprintf(stderr, " %04o: data %05o\n", c, d & 07777); */ - fprintf(stderr, " %04o", c); s = Fetch; break; case Fetch: @@ -64,20 +63,17 @@ load(FILE *fp) if ((d & 07777) != (t & 07777)) fprintf(stderr, "\nbad checksum %05o\n", t & 07777); else - v = 1, fprintf(stderr, "\nvalid checksum %05o\n", t & 07777); + v = 1; } - fprintf(stderr, " %04o", c); goto leadout; } t += u; u = 0; if (d & 0x8000) { - fprintf(stderr, ": mem[%06o]=%05o\n", a & 077777, d & 07777); mem[a] = d & 07777; a = (a & ~07777) | ((a + 1) & 07777); d = 0; } - fprintf(stderr, " %04o", c); if ((c & 0300) == 0000) { u = c; d = (c & 077) << 6; @@ -92,24 +88,19 @@ load(FILE *fp) } if ((c & 0307) == 0300) { a = ((c & 0070) << 9) | (a & 07777); - fprintf(stderr, ": field %o address %06o\n", (c & 070) >> 3, a & 077777); break; } if (c == 0377) { - fprintf(stderr, ": skipping: "); s = Skip; break; } - fprintf(stderr, ": unknown byte at %d\n", n); break; case Leader: leader: if (c != 0200) { - fprintf(stderr, ": end leader\n"); s= Fetch; goto fetch; } - fprintf(stderr, " %04o", c); break; case Skip: if (c == 0377) { @@ -124,13 +115,12 @@ load(FILE *fp) s = Leader; goto leader; } - fprintf(stderr, " %04o", c); break; } } leadout: while ((c = getc(fp)) != EOF) - fprintf(stderr, " %04o", c); + ; putchar('\n'); return v; } -- cgit v1.2.3