[ont.micro.mac] SUMEX MacC UNIX Development Kit

info-mac@utcsrgv.UUCP (info-mac) (06/08/84)

Date: Thu, 7 Jun 84 02:37:16 pdt
From: Bill Croft <uw-beaver!croft@safe>
To: info-mac@sumex
Subject: SUMEX MacC UNIX Development Kit

Our SUMEX MacC / UNIX development environment is finally ready for
beta release.  Below I have reproduced some sections of the
full 'manual'.  If you are interested I suggest you first FTP
the manual from <info-mac>sumacc.txt (login: 'anonymous') and
read it carefully.  For those with nroff/troff access, the
file 'sumacc.ms' will produce a much nicer looking typeset version.

-----

1.  Introduction

     This 'short' note describes the current state of our
UNIX/C development environment for the Macintosh, SUMacC
("some-max").  At present the release must still be con-
sidered in a beta test stage.  Although all the test pro-
grams we have tried so far operate correctly, there are no
doubt some minor bugs still lurking somewhere inside.

     We are distributing this package under the condition
that it may be "used" but not "sold" without our
permission.  This software is under a Stanford copyright
which must be retained on all copies of this software. Any
fixes or enhancements made to the package should be
reported back to us, for incorporation into future
releases.  While we will attempt to fix bugs and provide
new features, no warrantee is expressed or implied.  You
are basically on your own.

     Since this is a beta release, and since we are not
equipped to duplicate massive amounts of tapes and disks, we
are limiting distribution to those who can use the Arpanet
to FTP a copy from our SUMEX-AIM host, or from another
nearby host on the Arpanet.  To facilitate this, we ask that
anyone picking up a copy be willing to act as a redistribu-
tion point.  Send a note to croft@sumex giving the pathname
and anonymous FTP login to retrieve a copy from your host.
I will post a note to info-mac a few days after release sum-
marizing where folks can pickup a copy.

2.  Prerequisites

     The package is currently only setup for a VAX running
4.1 or 4.2 BSD UNIX.  It should be convertable to any other
UNIX box having a 68000 C compiler.

     We assume you have some release of the Apple MacTermi-
nal program.  This is used to download a printable hex file
from the VAX to your Mac disk.

     Since we don't have the resources to duplicate Sony
disks for everyone outside the Stanford community, we also
assume you have access to a Lisa (Mac Workshop) development
system.  This is used, one time only, to put a program on
your Mac disk (called fromhex ) that takes the printable hex
output from MacTerminal, and turns it into binary resource
file (fork).  Below in the Downloading section, we discuss
possible alternatives.  In any case, it's simply handy to
have at least one Lisa system available occasionally, since
this is how new software is released from Apple.

3.  Contents of the Kit

     The following directories/files are in the distribu-
tion:

sumacc.ms   This file, in -ms macro format.

Makefile    Master makefile that calls Makefile's in sub-
            directories.

cc42        C compiler binaries for 4.2 BSD.

cc41        C compiler binaries for 4.1 BSD.

ccsrc       C compiler source (if provided).

h           Macintosh header files, copied to
            /usr/include/mac.

lib         Macintosh library files.

cmd         Resource maker and other Macintosh related com-
            mands.

test        Some Macintosh C test programs.

man         Manual pages.

ws          Reference copy of most of the sources distri-
            buted with the Lisa Workshop.

4.  Installation

5.  Test Programs

     The C test programs provided are:

MacScrawl
  A primitive text/drawing program that was used to test out
  the Quickdraw and Event Manager routines.  Its commands
  are single keyboard characters;  examine the source code
  before trying to use it.  Try the 'm'agnifying lens to
  zoom in and out on sections of the screen and/or the lens
  itself.  In one-to-one mode there is some interesting
  stuff going on at the bottom of screen memory.

Grow
  This is a straight translation of the Pascal Grow program
  provided in the Workshop.  Windows, events, menus, Tex-
  tEdit, and desk accessories are all exercised. As an exer-
  cise, you might runoff a listing of grow.c and grow.p.ws
  (in the same directory) to compare how the Pascal was
  translated to C. 

Insane
  This tests the SANE IEEE 80 bit floating point package and
  numeric conversion.  Floating operations seem to average
  about 1 millisecond (well you can't say it isn't accu-
  rate...).

6.  Typical Compilation Cycle

7.  Current State of Downloading

8.  Future State of Downloading

9.  Toolbox Programming

9.1.  Argument Passing

9.2.  Handle Dereferencing

9.3.  Pascal Bird-Nest Soup

9.4.  String Utilities

9.5.  Heap vs. C Bss

9.6.  Pascal Toolbox Calling on C Routines

9.7.  Floating Point

10.  Compiler Sources

     The normal distribution contains only sources for the
code we have written here at SUMEX.  Since the compiler is
based on the Bell Labs (Johnson) Portable C Compiler, we
must be careful about distributing copies of this. It's also
unclear to me what good the compiler/assembler/loader will
do for you, since it's a large and somewhat crufty amount of
code.  As an interim policy we will make these sources
available to other Universities if there is enough interest.
However don't ask unless you plan some active development in
this area.

11.  Currently Unimplemented

     Overlays;  MacPrint interface and linkage;  Graf3D (but
see lib/TODO for a hint on how to convert this).

-----


The package currently is available as a 2 megabyte tar file located
on <info-mac>sumacc.tar.  At this moment it is available both 
on SUMEX-AIM (California) and COLUMBIA-20 (New York), so you 
should pick the host closest to you.  It would be appreciated if
you performed the file transfer during off hours as it takes
about a half-hour under best conditions.  At two in the afternoon
it would probably take much more time than this and be an annoying
additional load on our overburdened systems.  If more than one
group in your area wants a copy, please try to coordinate things
so you only get it from us once.

The hosts mentioned above are not UNIX hosts, so you must be
extra careful in performing the file transfer to ensure you
get all eight bits.  On your side you must set the transfer
mode to "TENEX" or "TYPE L 8" (ask your FTP guru if unsure).
We picked these distribution hosts because they happen
to have direct Arpanet connections (as opposed to routing
through gateways).

If you take a copy, please send me (croft@sumex) a note so I
can put together a list of users.  In a few days I can post this
list to info-mac so that it becomes more likely for you to
find a copy in your area.

Stanford users may drop by our SUMEX office (Med Ctr, TB105) where they
can borrow a copy of our SUMACC Sony disk for duplicating on their own
machine.

Good Luck!

	--Bill Croft