[net.micro.cbm] SQ and USQ for the C64 - a followup

prindle@nadc (09/12/85)

From: prindle@NADC

I recently posted a message concerning SQ (squeeze) and USQ (unsqueeze)
utilities for the C64, and subsequently sent source (C-Power) to a half-dozen
or so interested souls.  Last night, I noticed that I neglected to replace
the compile time expression "NUMVALS - 1" in usq.h with the constant 256,
conditional on CPOWER of course.  Since the current versions of C-Power (2.8
and lower) have a bug and generate sort of random large numbers when evaluating
a compile-time expression involving minus, the USQ as sent out will compile,
but may crash immediately upon being executed; then again, because of the
randomness, it may not (and did not originally for me, which is why I failed
to note the expression).  To play it safe for now, change that expression to
256.  The aforementioned bug has been reported to Pro-Line software and is
no doubt already being fixed by Brian Hilchie, the developer of C-Power; they
have been extremely responsive to fixing reported bugs.

For those of you who haven't caught the previous discussions of C-Power, it
is a high quality software development system for the C64, allowing programs
to be written and compiled in the "C" programming language.  It generates
completely machine language programs which can run under the C-Power "shell"
(command interpreter), or as standalone programs executable via "RUN" or
"SYS".  The compiler is surprizingly fast (considering the 1541 limitations),
generates non-optimized, but quite efficient code, has no limitations on the
number of object files which may be linked (withing memory constraints, of
course), and will compile surprizingly large and complex files (for example,
tr2.c) with no trouble.  An excellent editor, a text formatter (ala NROFF),
a library editor, and other utilities are included with the compiler, linker,
and shell.  A UNIX like command interface is used, complete with I/O re-
direction and command line parameter passing.  The standard, system, and math
libraries included provide 95 functions including virtually all of those in
the standard C library.  The package works with one or two disk units, and
with one or two drives per unit.  Only the compiler (first pass) file is
protected, and not so badly that you can't make your own backup copy.  The
package is about $100 american, and updated versions can be had by sending back
your diskette with $2.00 and waiting about a 1 1/2 weeks.  It is available
from Pro-Line Software Ltd., 755 The Queensway East, Unit 8, Mississauga,
Ontario, Canada L4Y 4C5.  Their order phone is 1-800-387-3208 (AT&T).  The
company is a joy to deal with.

C is a highly recommended language to learn - it is the heart and soul of UNIX
systems and is available for most other systems including many micros.  It
is a "real-world" language like those which will be encountered in the
computer job market, and unlike "BASIC" or any of it's clones.  C-Power
coupled with a 64 is just a super way to learn, since virtually the full
language is supported with very little strangeness (as compared with some
versions I have seen for micros).  The substantial tutorial book "C Primer
Plus" is included with C-Power, and it is quite nice both as a learner's 
manual and a reference guide.  And if you already are a veteran C user,
this system makes your little 64 feel much like one of the big boys.  Brian
Hilchie has also hinted that he might develop a version for the C128; that
would be very interesting indeed, what with a whole 64K available for stack
and static variables, and the rest available for program, not to mention
much larger compiler tables!

Disclaimer: I am in no way affiliated with Pro-Line Software.  This is an
independent evaluation of the product based on about 3 1/2 months personal
usage.

Frank Prindle
Prindle@NADC.arpa