[net.micro.6809] access to some C system calls, etc.

jejones@ea.UUCP (10/05/84)

(This is redundant with a letter that has gone out to an OS-9 mailing
list, but worth sending to the net in general. If you haven't sent
your preferences re a net.[micro.]os9, please do so...)

If you have the Microware C compiler, you may have noticed some small
things that don't work the way you want. I've mumbled about some of them
here on the net, e.g. creat() forcing owner read/write, public read
permission on all files it creates; chown() not working; getopt() not
letting you get to some of the options (perhaps defined since it was
written--e.g. getopt 14, which gives you device name, file manager name,
and device driver name for the file associated with an open path).

Good news: source to these things (and others) come with the C compiler.
(People with CoCo OS-9, please confirm/deny; I expect it to be the same
for you, but don't know.) Look on the distribution disk for SOURCES/SYS.
The source is in assembler (RMA, or c.asm), but it's there and readily
tweakable. (Do watch out for compatibility!)

Not only that, but source to cstart (the thing that does various jobs
of initialization and primitive argument parsing) is there as well.
One can hack up specialized versions of cstart and link them in to
one's code for various nefarious purposes. (For instance, a friend is
hacking on a mailer, and standard cstart's parameter line parsing
turns RFC822 addresses into fubar. We're going to bypass stuff so that
his program sees two arguments--program name and unhacked parameter
line, which can be read with scanf or moral equivalent.)

					Happy hacking,
					James Jones