PackIt (v1.0) Harry R. Chesley 4/12/85 1.0 Introduction PackIt takes one or more Macintosh files (either applications or documents), and packs them together into a single file. It will also unpack them. Most importantly, it will preserve both the data and resource forks of the packed files, as well as general file information (the file name, type, creator, Finder flags, and whether the file is locked). The packed file can be transferred to another computer using any of the existing binary file transfer protocols (XModem, Kermit, etc.). PackIt was originally motivated by a desire to be able to transfer a group of related files and: (1) Keep them together despite potentially wide electronic circulation, and therefore a large number of transfers. (2) Reduce the number of operations needed to effect the transfer. And (3) simplify storage of file groups on public file systems (i.e., no more "this is file 5 of 12" messages). PackIt can also be used to reduce the size of files being posted on public file systems, as compared to ".Hqx" format files. The packed file, being binary, is about the same size as the original Macintosh file, where as ".Hqx" files are invariably larger. There are other protocols currently being proposed to handle single binary files. PackIt can also be used to combine multiple files into one before transfer using one of these. 2.0 Usage There are two ways to invoke PackIt. When PackIt itself is opened, it provides menus from which the user can select the operation to be performed. Opening a PackIt type file (identified by an icon showing documents and applications inside a document), on the other hand, will cause PackIt to unpack that file and then return to the Finder. When using menus, the main PackIt commands are in the File menu. They are: Pack: This command will ask for a file name for the packed file it is going to create. It will then ask for a series of files to pack into it. Unpack: This command will ask for a file to unpack. Then, for each file packed in that file, it will ask for a file name to unpack it into; it will suggest a file name (the one the file had before it was packed), but the user is not required to use that name. A file can also be skipped (use the Cancel button); this feature can be used to scan thru a packed file. PackIt or TEXT Files Only: If this menu item is checked, the Unpack command will only show PackIt and TEXT type files as candidates for unpacking. Select the entry to toggle the check-mark. Delete File: This entry allows you to delete a file (this is useful when unpacking multiple packed files with a crowded disk). It asks you for a file to delete, then verifies the choice, then deletes the file. In order to identify PackIt files, an extension of ".PIT" should be used on files packed with PackIt. Besides the file itself, PackIt includes a CRC (a means of verifying that a block of data arrived intact) on each file header (the file name, etc.), and a second CRC on the data (resource and data forks combined). This provides a double check on the file transfer procedure (in fact, it is a more secure check than most file transfer protocols use themselves), and also verifies that the file is actually a PackIt packed file. These two CRCs make it virtually impossible for PackIt to create a file different from the original one, or to compromise the disk it is unpacking onto. Notes on using PackIt with the MAUG binary file transfer standard: A new standard for transferring Macintosh files while retaining all aspects of the files is being implemented by several new Macintosh communications programs, and is also in the process of becoming a standard for files stored on CompuServe. If a PackIt type file is uploaded and then downloaded with this protocol, it will then show up as a PackIt type file icon (a picture of documents and applications within a document), as long as a copy of PackIt is on-line. In order to then unpack the file, all you need to do is open (double-click) the PackIt-type file. 3.0 Conclusion PackIt provides an ability to combine a group of Macintosh files into a single file. The packed file can then be transferred using one of the binary file transfer protocols, or it can be converted to ASCII using Binhex, and then transferred using an ASCII transfer protocol. The latest version of PackIt will always be available on my BBS: 415-563-2491. Hope you find it useful.