[net.sources] Public Domain NRO - READ_ME

jordan@mddc.UUCP (08/15/83)

This version of NRO came from the C User's Group in Yates, Kansas.
The I/O was changed to run under Unix V7 style I/O, and other than that, no
modifications have been made to it.
	In the init() function, pg.lineno must be modified to suit your
printer; it wants the line number the print head is on when you do a top
of form.  On my printer, the way I position the paper, it will start printing
on the second line, so there is a value of 2 there.

	I would be interested in seeing any modifications anyone makes to
this program in the way of extended capabilities, macro packages, and printer
enhancements.  If you have problems in the logic itself, you should contact
the author.

		Happy Hacking,

		Jordan Bortz

		(..decvax!cbosgd!mddc!jordan)


P.S. I tried compiling it on 4.1 BSD, and it didn't work.  It works okay
	on my MS-DOS computer running Computer Innovations Ci C86, so
	there may be portability problems.

mark@cbosgd.UUCP (08/20/83)

re:
	On unix, (tolower) always subtracts a constant value from the argument
	and returns that value.
People ought to be careful with words like "always", especially in conjunction
with vague terms like "unix".

In V7 and many of its descendents (e.g. 4BSD), tolower(c) reads
	#define tolower(c)	((c)-'A'+'a')
It barfs on things that aren't upper case letters.

In System III and many of its descendents, there is a macro _tolower
defined like this, and a FUNCTION tolower that essentially does
	if (isupper(c))
		return _tolower(c);
	else
		return c;

In my opinion, the USG behavior is the better of the two.  (You can
argue about whether tolower should be a macro or function if you want.)
However, it is not safe to assume that tolower does sanity checking.