#include "output.h"

#define WRAPCOL 76

char
printw(FILE *fp, unsigned char *s, int slen)
{
    static int col;
    int c;

    c = '\n';
    if (col) {
        if (slen >= WRAPCOL-col) {
            fwrite(s, sizeof(*s), WRAPCOL-col, fp);
            s += WRAPCOL-col;
            slen -= WRAPCOL-col;
            col = 0;
            fputc('\n', fp);
        } else {
            fwrite(s, sizeof(*s), slen, fp);
            s += slen;
            col += slen;
            slen -= slen;
            c = *(s+slen-1);
        }
    }
    for (; slen >= WRAPCOL; slen -= WRAPCOL, s += WRAPCOL) {
        fwrite(s, sizeof(*s), WRAPCOL, fp);
        fputc('\n', fp);
    }
    if (slen > 0) {
        fwrite(s, sizeof(*s), slen, fp);
        col += slen;
        c = *(s+slen-1);
    }

    return c;
}