Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site gargoyle.UChicago.UUCP Path: utzoo!watmath!clyde!burl!mgnetp!ihnp4!gargoyle!toby From: toby@gargoyle.UChicago.UUCP (Toby Harness) Newsgroups: net.unix-wizards Subject: _print/_doprnt; curses on sys III Message-ID: <148@gargoyle.UChicago.UUCP> Date: Thu, 14-Jun-84 19:05:01 EDT Article-I.D.: gargoyle.148 Posted: Thu Jun 14 19:05:01 1984 Date-Received: Fri, 15-Jun-84 01:43:36 EDT Organization: U. Chicago - Computer Science Lines: 32 I am moving some code from a VAX/750 (4.2bsd) to a HP9000 (mostly(!) sys III), and have discovered that in /lib/libc.a _doprnt has been replaced with _print. Is this a HP mod or standard sys III? Does anyone (hplabs??) know how _print is supposed to work (e.g. type and ordering of arguments)? We have only binary from HP on this, and of course _print isn`t documented anywhere. We do have source for 4.2bsd and v7. The problem first came up in curses, but _doprnt is also used in csh and a couple of other places I can`t recall right now. The piece of curses code in question is (from _sprintw in printw.c): ... char *fmt; int *args; { FILE junk; char buf[512]; junk._flag = _IOWRT + _IOSTRG; junk._prt = buf; junk._cnt = 32767; _doprnt(fmt, arg, &junk); ... I don`t know, but doesn`t this strike some of you as UGLY? (comments?) With a work-around that can`t handle varargs (and that I have too much self respect to post here) I have curses working just fine on the HP9000 (incl. Mark Davoren`s recent scroll fixes). If anyone (with 4.2bsd source, alas) is interrest in a "#ifdef SYSIII" version of curses, I will be happy to send it to him/her, but only *after* I get an answer about _print. Toby Harness Ogburn/Stouffer Center, University of Chicago ...inhp4!gargoyle!sam!toby