[net.micro.cpm] New shareware compiler

cg@myrias.UUCP (Chris Gray) (09/04/86)

Greetings fellow CP/M'ers.

I have over a Megabyte of new CP/M software that I would like to get out
in the world as shareware. It was originally intended to be a commercial
product, but I think the time has passed for that. What I want to know is
how to go about doing it. Posting it to the net might raise just a few
hackles, so I'm reluctant to do that. Also, spending a few hundred dollars
to ship it to a BBS a thousand or so miles away doesn't sound attractive.
(I'm physically in Edmonton, Alberta - home of West Edmonton Mall.)

What I have to give away is a full programming language system. The language,
called Draco (pronounced Drayko), has been in use for a couple of years now,
so the compiler is fairly stable, as are the other utilities. The compiler
compiles at about 1500 lines per minute (5 MHz 8085) directly to relocatable
object files. The linker is similarly capable. Code produced is about on
par with the best produced by any C or Pascal compiler I've heard of. As an
example, the compiler itself is about 10000 lines. It compiles on a single
8" floppy in under 10 minutes, yielding about 40K of code. For small programs,
under 100 lines, the time to load the compiler is easily the dominant factor.
All of the tools are easy to use, and fit well into CP/M. Again, as an
example, to build the compiler from scratch, I just type

	draco dr*
	link dr1 dr2 dr3 dr4 dr5 dr6 dr7 dr8 dr9 -sodraco

(I built file patterns into the compiler, but not the linker - sigh.) The
entire package includes fairly complete documentation on everything, a few
thousand lines of sample sources (including a CRT-oriented adventure game
system needing only a scenario), and several utilities. Major programs:

	draco.com - the compiler itself
	link.com - the linker
	drlib.com - the library builder
	ddis.com - the disassembler
	das.com - a simple, one-pass assembler
	xref.com - call cross referencer
	trrun.lib - 8080 version of run-time library (quite comprehensive)
	trcpm.lib - CP/M-80 interface stubs
	crt.lib - terminal independent CRT I/O library (facilities vary from
		simple cursor addressing up through on screen formatter,
		menu builder and forms input routines)
	config.com - program to configure .set programs to a given terminal
	config.dat - database of terminal definitions (from a termcap)
	ded.set - visual programming editor
	hedit.set - visual hex editor/viewer
	cmp.set - visual file comparer
	- several CRT oriented games. Some are trivial, but two are major
		entities in their own right.

OK, so what should I do with this stuff? (Nasty comments can be directed to
/dev/null.) I'm willing to package up one or two copies (takes 5 single
sided single density disks) and send them to major sites (note that the
stuff is SHAREWARE, not FREEWARE), but I do not want to get into distributing
it myself - I figure I'm better off porting my compiler to the 68000 family.

			Chris Gray (...alberta!myrias!cg)