meulenbr@cst.philips.nl (Frans Meulenbroeks) (09/26/90)
I've ported BSD curses long ago (about 2 years), and I've sent diffs to the net. I haven't tried to recompile it lately, but anyway here are the diffs I dug up from my archive. If it does not work any more, don't blame me. I didn't retest! I've proposed these sources to ast, but he found them too big to include (I believe the total sources is something like 300k. Perhaps it can be reduced by removing some of the unnecessary files). Enjoy, Frans. # This is a shell archive. # Remove everything above and including the cut line. # Then run the rest of the file through sh. -----cut here-----cut here-----cut here-----cut here----- #!/bin/sh # shar: Shell Archiver # Run the following text with /bin/sh to create: # cr_put.c.cdiff # cr_tty.c.cdiff # printw.c.cdiff # scanw.c.cdiff # This archive created: Fri Nov 18 10:46:44 1988 sed 's/^X//' << \SHAR_EOF > cr_put.c.cdiff X*** ../../../src/SUG/freeunix/curses/cr_put.c Tue Jul 28 08:56:49 1987 X--- ./cr_put.c Thu Nov 17 15:01:23 1988 X*************** X*** 32,38 **** X X static int outcol, outline, destcol, destline; X X! WINDOW *_win; X X mvcur(ly, lx, y, x) X int ly, lx, y, x; { X--- 32,38 ---- X X static int outcol, outline, destcol, destline; X X! static WINDOW *_win; X X mvcur(ly, lx, y, x) X int ly, lx, y, x; { SHAR_EOF sed 's/^X//' << \SHAR_EOF > cr_tty.c.cdiff X*** ../../../src/SUG/freeunix/curses/cr_tty.c Wed Jul 29 04:22:14 1987 X--- ./cr_tty.c Thu Nov 17 14:31:02 1988 X*************** X*** 63,69 **** X--- 63,73 ---- X _tty.sg_flags = _res_flg; X ospeed = _tty.sg_ospeed; X _res_flg = _tty.sg_flags; X+ #ifdef LCASE X UPPERCASE = (_tty.sg_flags & LCASE) != 0; X+ #else LCASE X+ UPPERCASE = 0; X+ #endif LCASE X GT = ((_tty.sg_flags & XTABS) == 0); X NONL = ((_tty.sg_flags & CRMOD) == 0); X _tty.sg_flags &= ~XTABS; SHAR_EOF sed 's/^X//' << \SHAR_EOF > printw.c.cdiff X*** ../../../src/SUG/freeunix/curses/printw.c Tue Jul 28 10:26:55 1987 X--- ./printw.c Thu Nov 17 15:12:37 1988 X*************** X*** 71,76 **** X { X char buf[512]; /* Bogus, but what are we to do? */ X X! (void) vsprintf(buf, fmt, *args); X return waddstr(win, buf); X } X--- 71,76 ---- X { X char buf[512]; /* Bogus, but what are we to do? */ X X! (void) sprintf(buf, fmt, *args); X return waddstr(win, buf); X } SHAR_EOF sed 's/^X//' << \SHAR_EOF > scanw.c.cdiff X*** ../../../src/SUG/freeunix/curses/scanw.c Tue Jul 28 08:57:01 1987 X--- ./scanw.c Thu Nov 17 15:09:31 1988 X*************** X*** 49,54 **** X char *fmt; X int *args; X { X! fprintf(stderr, "NEED TO FIX SCANW()\n"); X! exit(-1); X } X--- 49,56 ---- X char *fmt; X int *args; X { X! char buf[256]; X! if (wgetstr(win, buf) == ERR) X! return ERR; X! return _doscanf(1, buf, fmt, args); X } SHAR_EOF # End of shell archive exit 0 -- Frans Meulenbroeks (meulenbr@cst.philips.nl) Centre for Software Technology ( or try: ...!mcsun!phigate!prle!cst!meulenbr)