[comp.sys.mac] *Help* unpacking BinHex files posted to comp.binaries.mac

tim@banyan.UUCP (Tim Henrion) (10/25/88)

Can someone please EMAIL me information about how to
unpack the BinHex files posted to comp.binaries.mac into
applications that I can run?

I get the BinHex files from my VAX to my MAC via Kermit and
then I process them through the BinHex 4.0 program on the MAC.
But all I get out of the BinHex 4.0 program are DOCUMENTS which
I can't run!

Please keep in mind that I am a MAC Mental-Midget. I have the
feeling that there is something very basic that I am missing
here...

As always, any help would be GREATLY appreciated. Please respond
via EMAIL to the address below:

Sincerely,
Tim Henrion
Banyan Systems, Inc.
Westboro, MA
UUCP: ...!buita!banyan!tim

strausd@ladder.cs.orst.edu (Douglas E. Strauss) (10/26/88)

In article <335@banyan.UUCP> tim@banyan.UUCP (Tim Henrion) writes:
>Can someone please EMAIL me information about how to
>unpack the BinHex files posted to comp.binaries.mac into
>applications that I can run?
>
>Sincerely,
>Tim Henrion
>Banyan Systems, Inc.
>Westboro, MA
>UUCP: ...!buita!banyan!tim

 Well Tim, I sorta on the other end of the scale, cna't figure out how to send
 you mail, actually addressing it is the problem.  Hope you get this.

 I've been using Red Ryder for downloading the files from the Unix here at OSU
 after stripping all the header information, footers too.  Then combining all
 the sections into one when applicable.  Then I send the file thru Kermit.  You
 need to make sure the strip line feeds option is on, don't know if other comm
 progs have it or not.  Then it should be easily converted by binhex.  I'm using
 5.0.  After this point you will either have an application or an archived file.
 IF archived you will need to use "shrink to fit" if it is type .sit, and 
 "Packit" if it is type .pac.  These are the most common types.  There may also
 be a combination of these.  Mostly they are .sit, being the new favorite.

 To get these progs, most BBS's should have them, or you'll need them sent to 
 you, I could try if you like, send me mail if you can.
 machine.cs.orst.edu.ladder.strausd
 (I think? or somthing like that)

moore@svax.cs.cornell.edu (Doug Moore) (10/26/88)

Pleas for help are a regular occurrence in this newsgroup.  Would it be
appropriate to post on a monthly basis some kind of help file?  I have
composed such a file which I send to some who ask such questions.
Should this document, possibly with some revisions of course, be considered
for monthly posting?

Because the purpose of this idea is to reduce net traffic, please mail
any responses.

Doug Moore (moore@svax.cs.cornell.edu)

Mac help:
Mac binaries come in "Binhex4" format.  This format (yes, there was a
Binhex 3 and there is a Binhex5, too) allows the transmission of
binaries over 7-bit lines.  Essentially, it takes every 6 bits and
converts them to some printable character; it also encodes Finder
information not intrinsically part of the file (creator, type, etc.)
and does a bit of run length encoding to save a bit of space.  The
Binhex4 format evolved from a shareware program called binhex, but
several programs now exist that can handle the format.  Binhex4
format is essential because some parts of the net can only handle
7 bit wide messages.

Because many postings consist of several related files, people
have developed programs to pack files into collections for transmission
as a group.  The first of these programs to be widely used in the Mac
world was Packit, by Harry Chesley.  Packit I did little more than
concatenate the files.  Packit II used Huffman compression to save space.
Packit III allowed encryption.  All were shareware.  When you see a file
with the .pit suffix, it is a likely to be a PackIt archive.

Raymond Lau's Stuffit has largely superceded Packit.  It uses the
more sophisticated Zempel-Liv compression scheme to save more space
than Packit.  Stuffit archives are considerably more flexible than
Packit archives as well.  Stuffit archives usually have a .sit suffix.
In addition, Mr. Lau has built into Stuffit the ability to encode and
decode binhex4 files and to unpack Packit files.

If you have a complete binhex file on your Mac and you have Stuffit,
you are ready to roll.  Now, let's consider things at the other end.

A 5-part binhexed stuffed file comes across comp.binaries.mac.  Why
5-part?  Because some mailers can't handle >64k messages, that's why.
First, you save them to a file or files.  Personally, I type
wm game.hqx
in rn, because I have an .rnmac file that equates wm to w ~/mac/hqx/.
The first time I issue this command creates game.hqx and subsequent
times concatenate the new pieces to the end of the old.  I have to be
sure to save the pieces in the proper order; pieces occasionally arrive
out of order.  When I have collected the pieces, I have two basic options.
Either I get the binhex file (with a few mail headers in the middle of it)
to my Mac and use Stuffit to decode (Stuffit is supposed to ignore the mail
headers, by the way), or decode on the host and send the result to my
Mac.  The second option is the one I use, and requires some explanation.

My connection to the host I use is 8 bits wide, and I see no reason to
to the downloading with an extra 33% overhead.  There is an 8-bit
protocol, called MacBinary (or binhex5) that several terminal emulators
support that allows the terminal program itself to install the downloaded
program so that, for example, the icon for the game I download appears
on the desktop when I quit the terminal program, without me running
some conversion program on the Mac.  The problem then is to convert
binhex4 files to macbinary files on my host computer.  Happily, there are
programs that run on my host system to do this.  I wrote one called mcvert
that meets my needs.  It's fast, it strips out mail headers, it can unpack
(but not unstuff) files as it goes.  It creates a macbinary file.
I then use xmodem and Versaterm to do a macbinary ymodem transfer to
my Mac.  I could instead, if I chose, use kermit for the macbinary
file transfer.

Xmodem and kermit are the two most common file transfer protocols
for micros, and most bigger computers have one or both capabilities.
The original Mac communications program, MacTerminal, had its own
version of xmodem that was slightly different.  One mac sent a
file to another by 3 separate xmodem file transfers, one for the
resource fork of the mac file, one for the data fork, and one for
the finder info.  A pair of programs called macget and macput
were written in 1984, by Dave Johnson of Brown University, to make a host
machine act like a mac, so that when a mac sent "foo" to a host computer,
the host created files foo.rsrc, foo.data and foo.info.  A program called
xbin allows a binhex4 file to be converted to its .data, .rsrc and .info
components.  Before macbinary, therefore, I would manually strip
out mail headers, xbin the result, and macput the resulting triple of
files to my mac.  After macbinary, someone wrote a utility called macbin to
convert a triple to a macbinary file.  There are also utilities out there
to automatically filter out mail headers, to unpack files, and to unstuff
files.  I wrote mcvert to avoid having to go through all those steps.

My personal procedure, then, is to save the binhex4 pieces together in
a file, mcvert that file, xmodem the result to my mac, and unstuff
if required.  This is the method that minimizes the time spent
downloading.

Free Mac programs come from a lot of places.  Besides the non-profit and
for-profit computer networks, there are archives on the ARPAnet if you can
access them.  The directory info-mac at sumex-aim.stanford.edu is a pretty
good source, although it is cluttered with a lot of outdated stuff and isn't
well organized.  The directory mac at rascal.ics.utexas.edu is sparser, but
better-organized.  Some of the files at rascal are in MacBinary format, so
be sure to use binary ftp to get those files.  There is also an archive at
simtel20.arpa that I haven't tried yet.  They all allow ftp access to user
anonymous (that means you).  They'd probably appreciate it if you did most of
your browsing in the middle of the night.

I hope this has been helpful.  If any points are unclear, or if I can
send you anything to get you started, please let me know.

ls1i+@andrew.cmu.edu (Leonard John Schultz) (10/26/88)

>I get the BinHex files from my VAX to my MAC via Kermit and
>then I process them through the BinHex 4.0 program on the MAC.
>But all I get out of the BinHex 4.0 program are DOCUMENTS which
>I can't run!

I am having the same problem with BinHex, nothing will run.  Can the
knowledgable people out there tell us virgin Mac users the simple answer??
Thank you.

rang@cpsin3.cps.msu.edu (Anton Rang) (10/27/88)

Since there seem to be several of these, I'm posting this.  Apologies
to those "in the know".

  If you've downloaded files (particularly from comp.binaries.mac),
and un-BinHex them, and they turn out to be un-identifiable documents,
check the file type.  There's a good chance that it's 'SIT!'.  If so,
you need UnStuffIt or StuffIt to unarchive the files.  Another
possibility is 'PIT ' (or something like that), in which case it is a
PackIt archive.  You can use either PackIt or StuffIt to unarchive a
PackIt file (at least, as far as I know).
  For users with access to ARPAnet, StuffIt and UnStuffIt (as well as
most other comp.binaries.mac submissions) are available with anonymous
FTP from 'sumex-aim.stanford.edu', in the directory 'PS:<info-mac>'.
There may be other archive sites, but I don't know of any.  I believe
the current versions are UnStuffIt 1.5, and StuffIt 1.5.1.
  I don't know where users without ARPAnet access can get it.  Does
anyone have them out there for anonymous UUCP, maybe?

+---------------------------+------------------------+----------------------+
| Anton Rang (grad student) | "UNIX: Just Say No!"   | "Do worry...be SAD!" |
| Michigan State University | rang@cpswh.cps.msu.edu |                      |
+---------------------------+------------------------+----------------------+