if (open(argv
[0], 0) < 0)
perror(argv
[0]), exit(1);
if (read(0, &h
, sizeof(h
)) != sizeof(h
))
fprintf(stderr
, "header read error\n"), exit(1);
fprintf(stderr
, "bad magic number\n"), exit(1);
if (read(0, d
, sizeof(d
)) != sizeof(d
))
fprintf(stderr
, "dispatch read error\n"), exit(1);
size
= stb
.st_size
- tell(0);
fprintf(stderr
, "%d bytes of characters\n", size
);
/* write(1, &h, sizeof (h)); */
for (i
= 0; i
< 256; i
++)
rprt(i
, &d
[i
], chp
+d
[i
].addr
);
printf("%d bytes, l %d r %d u %d d %d:\n",
dp
->nbytes
, dp
->left
, dp
->right
, dp
->up
, dp
->down
);
bpl
= (dp
->up
+dp
->down
+7)/8;
for (i
= 0; i
< dp
->right
+dp
->left
; i
++) {
for (j
= 0; j
< bpl
; j
++)
for (j
= 8; j
> 0; j
--) {
printf((i
& 0x80) ? " *" : " ");