Abstracts from files in info-mac/dev/src as of Sun 20 Mar 2005


#### BINHEX     ad-invert-shapes-101-c.hqx   ****

From: joe@clipper.cb.att.com
Date: Sat, 9 Oct 93 15:44:10 EDT
Subject: InvertShapes 1.0.1


	This is version 1.0.1 of the InvertShapes AfterDark
	screensaver module. This version corrects the "random" 
	feature and the credit string.

	Source code is included.

	- j.t.judge


#### BINHEX     adobe-premiere-developer-c.hqx   ****

Date: Tue, 5 May 92 14:39 +1200 
From: "Lawrence D'Oliveiro, Waikato University, Hamilton, NZ"
Subject: info-mac/tech/adobe-premiere-developer.hqx 

The following archive includes information and sample code (in MPW C
and assembler) for writing your own add-ons for Adobe Premiere. You can
create custom visual transition effects, video filters, and audio filters.

I found this originally posted on AppleLink by Randy Ubillos, author
of Premiere.

Lawrence D'Oliveiro, Waikato University, Hamilton, New Zealand.
ldo@waikato.ac.nz
--------------------------------------------------------------------------------

#### BINHEX     aiff-dsp-framework-21-c.hqx   ****

Date: Sat, 4 Feb 1995 11:36:46 -0500
From: bdenckla@husc.harvard.edu (Ben Denckla)
Subject: AIFF_DSP: An AIFF File DSP Programmer's Framework in Portable C

AIFF_DSP: An Audio IFF File DSP Programmer's Framework in Portable C
available via ftp at "ftp.cs.jhu.edu" in pub/dsp

Note for users of previous versions of AIFF_DSP:  The only change in this
version is that unlike v21, it includes the correct version of interface.c,
which was correct in v20 but not in v21.  This old version of interface.c
did not compiler under newer versions of Think C.

Introduction
This archive contains code which provides a framework in which user-written
C functions which process the data in Audio IFF (AIFF) files are called.
The framework contains main() and deals with all aspects of AIFF file
handling, allowing the user to concentrate solely on the development of
his/her DSP algorithm.  For those readers who are familiar with Tom Erbe's
"SoundHack" program for the Macintosh, this framework is similar to that
program except for the fact that source is available and portable and you
can add your own processing functions in a very modular, simple way.

Theory of Operation
The framework calls three user-written functions in the course of its
execution.  First it calls a user-written initialization function, which
would typically do things like set up lookup tables.  Then it repeatedly
calls a user-written processing function, each time placing a new block of
data in the buffer.  When the AIFF file has been exhausted of data, it
calls a user-written termination function, which would typically do things
like free memory which had been malloc()'ed for a lookup table.

Though the framework was originally designed for the processing of AIFF
files where an AIFF file is taken as input and an AIFF file is made as
output, through the setting of user-defined variables, the framework can be
made to take no input or make no output.  The mode in which no input is
taken is useful for tasks such as the generation of AIFF files by
algorithmic means.  The "no output" mode is mode is useful for tasks such
as the analysis of AIFF files, where the analysis output goes to the screen
or to a non-AIFF file.

The three user functions and the the two user variables above are typically
defined in their own .c file.  This file contains a global structure which
contains the two variables and pointers to the three functions.  This
quintuplet defines what I call a "plugin."  The only contact with framework
code that needs to occur is to "register" a plugin.  This consists of
adding the name of the plugin to lists of other plugins in
"plugin_specific.c".  All of these plugins are available at runtime and one
is chosen by the end user.

Much more could be written about how to use the framework but time
constraints compel me to merely direct the reader to the included examples
of processing functions and to the source code for the framework itself.

Portability
When THINK_C is defined (which happens automatically when that compiler is
being used), the program compiles to an executable that does some
Macintosh-specific things.  Otherwise, a generic text-mode program is
created.  This generic mode has been tested successfully on the following
UNIX systems, using gcc except where noted:

OS: SunOS 5.3 (UNIX System V Release 4.0)   machine type: sun4d sparc
OS: HP-UX A.09.03   machine type: HP 9000/712
OS: ULTRIX 4.3   machine type: RISC (DECstation 5000/240)
OS: NeXTStep   machine type: NeXT
OS: OSF/1 v2.0   machine type: Alpha (using native DEC cc)

On little-endian machines, audio data with a 16 bit sample word size is
automatically byte-swapped before delivery to the user-written processing
function.  It is byte-swapped back again before being written to the output
file.

On Macintosh compilers other than Think C, there may be some small
modifications needed to the code in "Think_C.c" that sets the file type to
'AIFF'.  Other than that, if you just #define THINK_C, code should work
fine on other Macintosh compilers.  The code has been tested successfully
on Think C 5.0 and Symantec C++ 7.0.

Miscellany
If you would like to receive email notification of further updates to these
programs, please send mail to my address below.  I am also very interested
in hearing what you plan to do or have done with my code, so please drop me
a note for that reason as well.

This project was funded in part by the Ford Foundation's project to provide
grants for undergraduate research at Harvard University.

Ben Denckla
bdenckla@fas.harvard.edu
February 4, 1995


#### BINHEX     angry-face-cursor-104.hqx   ****

From: Furnesss@northcentral.k12.ia.us
Subject: Angry Face Cursor v1.04


Angry Face Cursor v1.04

This is my fourth attempt for making shareware.  This will replace your normal
boring black cursor with this nice icon of an angry face.  I hope you like these
cursors I am making and have made in the past.

This should be compatible with any Mac, I have tested it on a variety of
different macs like Power Mac 5200, 5260 and also on LC 575-580's.  A couple of
my friends have also tried it on their machines. If you come accross any problems
hust let me know at FurnessS@northcentral.k12.ia.us

Disclaimer: If anything is to happen to your Mac while you are using
this�well�too bad�becuase you cannot blame me.  You use this at your own risk.  I
have not had any problems with it, so I doubt that you will either.

This is $3 shareware, I don't think that is too much to ask, I am going to need
every little dollar to keep making stuff���if you feel generous you may pay more
but I ask that you atleast please send the $3. You can send it to:

Sylvan J. Furness 409 Main Street, P.O. Box 51 Hanlontown, Iowa 50444

The only reason I am putting a little fee on this piece of software is because it
took alot of time to make.

Sylvan Furness




#### BINHEX     app-launcher-cpp.hqx   ****

From: Andrew Nemeth <aznemeng@zeta.org.au>
Subject: AZN_AppLauncher

New version of AppLauncher follows:

-  Bugs fixed.
-  CW 7 compatible
-  New features added to TAELaunch C++ class.

Applauncher is a native PPC Macintosh application 
and source code which shows how to launch, manipulate 
and quit remote applications.

Based on Peter Lewis original Pascal code.
(Original sources also included).

Andrew Nemeth
aznemeng@zeta.org.au
24 Oct 1995
Blue Mountains, Sydney Australia


#### BINHEX     append-ditl-demo-c.hqx   ****

Date: Fri, 18 Nov 1994 14:23:25 -0500
From: Marty Wachter <mrw@welchgate.welch.jhu.edu>
Subject: Demo of Dialog Manager calls in System7

        This shell was created to demonstrate the correct way to 
        use AppendDITL(), CountDITL(), and ShortenDITL() Dialog 
        Manager calls in System7.  This shell also show how to 
        corectly use the WindowFont for drawing text in a dialog This 
        demo creates a sample dialog which contains a checkbox 
        control using the WindowFont.  This checkbox appends and 
        shortens the dialogs DITL.  


#### BINHEX     apple-event-interface-plog.hqx   ****

Date: Mon, 19 Oct 1992 08:29:16 +0100 
From: Stephen.Cooper@csd.uu.se (Stephen Cooper)
Subject: AE Interface.pl v1.01 

This code works only with LPA MacProlog 4.5 or better.  

AE Interface.pl is the source code for a prolog interface to Apple events. 
This program allows retreiving succesive answers to prolog goals and
translation of the answers to e.g., HyperTalk commands.  The answers are in
text format, perfect for working with HyperCard or SuperCard.
-----------------------------------------------------------
Stephen Cooper  	       	       	+46-(0)18-18 10 73 (voice)
Computing Science Dept  	       	+46-(0)18-52 12 70 (fax) 
Uppsala University, Sweden      	stephen@csd.uu.se


#### BINHEX     application-menu-addition-as.hqx   ****

Date: Mon, 11 Oct 93 15:33 +1300
From: "Lawrence D'Oliveiro, Waikato University, Hamilton, NZ"
Subject: info-mac/UserInterface/appmenu-additions-as.hqx

Hi.

Enclosed is a small update to my Application Menu scripting addition for
AppleScript. The code is the same as before, but I have changed some resource
attributes to try to avoid occasional crashes that could occur with the
previous version.

Please replace your current copy of the archive with this version.

Lawrence D'Oliveiro
Computer Services Dept
University of Waikato
Hamilton
New Zealand
--------------------------------------------------------------------------------

#### BINHEX     arrow-cdef-c.hqx   ****

From: "David J. Hay" <hay@nag.cs.Colorado.EDU>
Subject: ArrowCDEF
Date: Wed, 30 Mar 1994 21:24:04 -0700 (MST)

  Please find attached to this message a Binhexed copy of my ArrowCDEF.
This is a CDEF I wrote for implementing an up-down arrow similar to those
found in the color picker. It supports the ability to use any PICT resources
to draw the arrow, so you can make the arrow look however you like.

  Included is a Think C 5.0.4 project for the CDEF and a program to test
it. The test program includes a resource file with a B&W set of arrows
and a color set of arrows.

-- 
|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
| David Hay                  _-^-_   Remember, always pillage |
| hay@cs.colorado.edu       / o o \           BEFORE you burn |
|--------------------OOO---'---U---`---OOO--------------------|



#### BINHEX     ars-magna-ii-c.hqx   ****

Date: Fri, 24 Sep 1993 11:47:34 -0800
From: mxmora@unix.sri.com (Matthew Xavier Mora)
Subject: Ars Magna II



--========================_7523546==_
Content-Type: text/plain; charset="us-ascii"

Enclosed is a new version of Ars Magna called Ars Magna II. I recomplied
Mike Morton's ars.c code to use think's console library. This makes it a
little more compatible but its still just a C program with command line
interface. 

I gave it a new signature and icon to keep it separate for the other version.

I did this because someone here needed to use ars magna and the old version
would trash his screen. Hopefully some one will give it a good interface
and make it a real mac program. I just don't have the time.


Matt



--========================_7523546==_
Content-Type: application/mac-binhex40; name="Ars_Magna_II.sea"


#### BINHEX     artabrot-11-c.hqx   ****

From: warnergt@aloft.att.com
Date: Tue, 23 Nov 93 21:08:23 EST

ARTAbrot - Apple Real-Time Architecture Mandelbrot Program
Version 1.1
by George Warner
11/22/93
warnergt@aloft.att.com

REQUIREMENTS:
68020 or greater
ARTA equipped Macintosh (Quadra 840av, Centris 660av, or Mac with ARTA 
plug-in board.

1. WHAT IT IS: ARTAbrot is a Mandelbrot program that it uses the AT&T 
DSP3210 in ARTA to perform the intensive Mandelbrot calculations.

2.  SOURCE CODE TOO!  Complete source code is provided.  For those who 
would like some sample ARTA source code (which is scarce at the time of 
this release).  The DSP3210 source code is in file mbrot.s.  All of the host 
DSP function calls are in brotcode.c.  For those of you considering DSP 
programming, take a look at the mbrot.s DSP source code.  This is DSP3210 
assembly code, but it is very much like C code -- one of the very nice 
features of the DSP3210.

Release 1.1	11/22/93	Added support for larger windows, resizable windows, 
and background processing.
Release 1.0	08/23/93	First version.


#### BINHEX     async-sound-sample-pas.hqx   ****

Date: Sat, 27 Mar 1993 14:30:39 -0800 
From: westrom@unixg.ubc.ca
Subject: Pascal source code: async sound production 

I was trying to get Think Pascal 4.0.2 to play anynchronous sounds (sounds 
that play while other things are happening). It turns out that you have to 
remove the [D] Debug compile option or else the machine crashes.

On the road to discovering this, I made a 'minimal' anynchronous sound
playing 
program. A sample sound playing program is provided by Jim Reekes in the
DTS 
folder of apple.com, but it is very elaborate and complex. What I offer
here 
is a minimum piece of source code that a beginner could look at to see the 
essential elements of async sound production, done by-the-book (vol VI of 
Inside Apple, in this case).
--------
Marv Westrom
Faculty of Education, UBC
Vancouver, B.C. Canada V6T 1Z4


#### TEXT       atp-sample-code-c.txt   ****

From: Stuart Cheshire <cheshire@cs.stanford.edu>
Subject: Re: Looking for some sample appletalk ATP code... 
Date: Wed, 2 Sep 92 18:11:08 GMT 

In article <1992Sep1.033635.28604@sunb10.cs.uiuc.edu> Alex Bratton,
bratton@sparc3.cs.uiuc.edu writes:
>If you have some sample code (ATP) that opens, registers, and dumps some
>data, I'd really appreciate seeing it.  This has been bugging me for a
while
>and I think I need to look at some working code to see what I'm missing.

Here is some more sample code, which opens and registers an ATP socket.
It is from the Macintosh User Authenticator mentioned in a previous post
be me.

The code is written for Think C 5.

#include <Traps.h>
#include <GestaltEqu.h>
#include <Folders.h>

#### BINHEX     auto-bin-c.hqx   ****

From: mxmora@unix.sri.com (Matthew Xavier Mora)
Subject: AutoBin (a drag and drop Binhexer with source)
Date: Thu, 9 Dec 1993 13:21:47 -0800



--========================_6876772==_
Content-Type: text/plain; charset="us-ascii"

Enclosed is AutoBin. Autobin is a program based on dropshell that
will binhex any file dropped on top of it. Since I didn't write very
much of the actual code, included the source so other can benefit too.
(and hopefully modify it and make it better.)


Xavier




--========================_6876772==_
Content-Type: application/mac-binhex40; name="AutoBin_w=src.sea"
Content-Disposition: attachment; filename="AutoBin_w=src.sea"


#### BINHEX     basic-black-151-c.hqx   ****

From: Mason Loring Bliss <mason@cis.umassd.edu>
Subject: Basic Black 1.5.1 source release

Enclosed is the source distribution of Basic Black version 1.5.1.
Please use this in place of the 1.5 source package, as version 1.5
contained a couple of bad errors that weren't caught until after
it was released. This version is stable.


#### BINHEX     bbedit-30-dev-kit.hqx   ****

From: bbsw@netcom.com (Bare Bones Software)
Subject: BBEdit 3.0 Extension Developer's Kit
Date: Mon, 17 Oct 1994 19:22:10 -0700 (PDT)


The attached StuffIt Deluxe archive contains documentation,
interfaces, and sample source code that developers can use to write
BBEdit extensions.  This updated version features revamped
documentation, a new "universal" include file, and information and
samples on how to write PowerPC-native extensions.

Extensions written with this kit are compatible with BBEdit and BBEdit
Lite, version 3.0, and, if properly written, are also
backward-compatible with older versions of BBEdit.

The extension developer's kit is also immediately for anonymous FTP
from ftp.netcom.com, in /pub/bbsw, and from ftp.std.com, in
/pub/bbedit.  If you have a URL-aware utility such as MacWEB,
Anarchie, or Mosaic, you can directly access the developer's kit with
one of the following URLs:

ftp://ftp.netcom.com/pub/bbsw/bbedit-30-dev-kit.hqx
ftp://ftp.std.com/pub/bbedit/bbedit-30-dev-kit.hqx

-- 
Bare Bones Software, Inc.                          Internet: bbsw@netcom.com
%==========================================================================%
      Rich Siegel            Michael Fryar               Patrick Woolsey
    President & CEO      Chief Operating Officer    Chief Technology Officer


#### TEXT       blockio-c.txt   ****

From: "Art Eschenlauer" <eschen@molbio.cbs.umn.edu>
Subject: Routines that open blocks as filestreams in ThC 5
Date: Sat, 24 Sep 1994 12:31:39 -0500 (CDT)

Here's a file to put into /mac/development/sources/snippets on
mac.archive.umich.edu. Compress it as you please.


/*
blockio.c and blockio.h by Art Eschenlauer

Routines to open blocks of memory as simple filestreams under ThinkC 5.0.4

Here are some routines to open a block of memory (Ptr or Handle) as a simple
filestream (they do not support disk oriented commands like rewind and seek).
I wrote these for porting unix software to ThinkC 5.0.4 using the standard 
libraries. I don't know if they would work on later versions of ThinkC std
libraries. Bugs, comments, flames, etc. to eschen@molbio.cbs.umn.edu.

Disclaimer:

#### BINHEX     bob-15-c.hqx   ****

Date: Sat, 2 Oct 93 23:08:11 -0700
From: tsyang@dec-9.CE.Berkeley.EDU (Tzong-Shuoh Yang)
Subject: Bob15.hqx - Bob Programming Language (Think C source)


This is the Tinnk C 6.01 version of  Bob 1.5.   For details, 
please see article
   
  Betz, David.
   "Your own tiny object-oriented language: C++? Smalltalk? 
   What about Bob? (an interpreter formed from C++ and Lisp) 
   (tutorial)",  Dr. Dobbs Journal v16, n9 (Sept, 1991):26 
   (8 pages).

Bob was written by:

	David Betz
	P.O. Box 144
	Peterborough, NH 03458
	(603) 924-4145

Bob is available free of charge for non-commercial use.  If 
you're interested in using Bob commercially, please contact him 
at the above address.

The original source codes are written in Microsoft C and can be 
obtained by anonymous ftp from ftp.mv.com. 

Have fun.

T. S. Yang  (tsyang@ce.berkeley.edu)
================================================================

#### BINHEX     brailler-061b-c.hqx   ****

From: f8dy@netaxs.com
Subject: Brailler 0.61 source
Date: Tue, 7 Mar 1995 11:47:37 -0500 (EST)

Brailler 0.61B is a Braille text editor.  You can use it as a brailler-style
typewriter (with six keys and a space bar), or you can type in English
and Brailler will translate your text into grade 1 or 2 American
Standard Braille as you type.  Requires system 7.0 or later.  Copyright (c)
1994-5, Mark Pilgrim; please read enclose file "GNU General Public License"
for licensing details.

Version 0.61B includes support for the Drag Manager, the ability to convert
non-Brailler text files to grade 1 or 2 Braille when opening them, and
many technical improvements.


#### BINHEX     c-interp-c.hqx   ****

Date: Wed, 2 Jun 1993 10:15:23 -0600 
From: cshotton@oac.hsc.uth.tmc.edu (Chuck Shotton)
Subject: C Interpreter Source Code 

C_Interp.sit contains the complete Think C source code for an interpreter
of a  subset of C. It is implemented as a subroutine call that can be
embedded in any application, making it extremely easy to add scripting to
an existing application. Callbacks from the interpreted C code to the
calling application can be made. The source should compile without changes
on any Unix host as well. See the enclosed documentation for more details.

Note: I am not the original author of this code, but I have modified it to
create a stand-alone library function. See docs for credits.
---


#### BINHEX     c-modal-progress-cp.hqx   ****

Date:  Fri, 17 Feb 1995 22:33:00 -0500 
From: "graham (g.) heathcote" <heathcot@bnr.ca>
Subject:  CModalProgress class source code

Enclosed is source code for a class which implements a progress dialog such as 
Finders copy dialog. There is a readme and example app.
Regards,
Graham Heathcote.


#### BINHEX     calendar-cdef-11-p.hqx   ****

From: baer@gis.geogr.unizh.ch (Hansruedi Baer)
Subject: calendar-cdef-11
Date: Wed, 18 May 94 22:23:07 +0200


Hansruedi Baer
Department of Geography         
University of Zurich            Phone:    ++1 257-5256
Winterthurerstrasse 190         Internet: baer@gis.geogr.unizh.ch
CH-8057 Zurich


CalendarCDEF 1.1

This simple control definition function lets you choose a date
from a calendar. Source code (THINK Pascal) and a documentation
(Word) is included.

CalendarCDEF 1.1 is public domain.

Questions and comments to:

Hansruedi Baer
Department of Geography
University of Zurich
Winterthurerstrasse 190
CH-8057   Z u r i c h

e-mail: baer@gis.geogr.unizh.ch

----------------------------------------------------------------


#### BINHEX     calendar-mdef-09b.hqx   ****

From: (Cristiano Verondini) cverond@dida05.deis.unibo.it
Subject: CalendarMDEF 0.9 beta

CalendarMDEF version 0.9 beta
(c) 1996 by Cristiano Verondini. All rights reserved.

CalendarMDEF is an MDEF useful to enter a date using only the mouse. Only
few lines of code are needed to insert it into an application, and it can
save you a lot of keystrokes. 

The documentation contains detailed instructions on how to use it. This is
a demo, but you can have a full version for free. Read the documentation.


#### BINHEX     canimcursor-10b4-c.hqx   ****

From: k044477@hobbes.kzoo.edu (Jamie R. McCarthy)
Subject: /source/c/canimcursor-10b4.hqx 
Date: Mon, 14 Sep 92 13:56:45 EDT 

This Compact Pro archive contains the source code for CAnimCursor,
a public domain Think C 5 class that provides easy, flexible handling
of animated cursors.  The Think Class Library is not required.  This
is the fourth beta.  (It's quite stable and hasn't crashed in months,
but I'm still calling it beta because of a minor anomaly which I
haven't resolved yet.)
 
CAnimCursor uses an 'acur' resource to determine which cursors to
display;  the animation speed and a few other variables are changed
by method calls.  Both color and B&W are supported.  The interface
can be as simple as initializing the object with the resource ID of
your 'acur', and calling startAnimating() and stopAnimating() at the
appropriate times.
 
CAnimCursor's best feature is that it is very good about doing the
Right Thing (tm).  For example, if your 'acur' points to color
cursors and the Mac is B&W, it will pull the B&W bitmaps out of the
'crsr's.  If you call startAnimating() twice, the second call will
have no effect.  And so on.
 
CAnimCursor will not call SetCCursor at interrupt time, since that
trap relies on the heap being good, and will fail if the interrupt
occurs during a memory manager reorganization.  This does not happen
often, but one crash is one too many.
 
Also included are CQixableCursor, a subclass which optionally draws a
little 'Qix' over your cursors;  subclasses of three TCL core classes
which will prevent the cursor from being reset each time through the
event loop;  a short sample subclass;  and four sample cursors,
including a smooth beachball and a color spinning earth.  (I stole
the earth from Stefan Bilaniuk's free extension "Earth," also at
sumex-aim.  I feel no guilt because I guess he stole it from someone
else ;-), and because I colorized all 26 frames by hand, phew!)
 
Extensive (indeed, ponderous) comments explain proper usage, and there
are even one or two comments in the code itself.  Plus, it comes with
a toll-free technical support number, which I figure is a pretty good
deal for something in the public domain, eh?



#### BINHEX     capitalizer-c.hqx   ****

From: (Rui Campos) rufus@ici.net
Subject: Capitalizer BBEdit Extension Source Code

What it is:

This is a little BBEdit extension that I wrote for myself, and I'm
giving it away for free!  I used the sample extension called
"Capitalize" that came with BBEdit, and made it a little more flexible.
 Now it will handle more capitalization chores.

What it does:

* Have you ever wanted to change a whole block of text from uppercase to
lowercase?
* Have you ever wanted to quickly change a title to an appropriate title case?
* Have you ever needed to uppercase a bunch of words at once?

Have you?  And did you really want to re-type all that stuff yourself?
No?

Well then have I got an extension for you!

The Capitalizer will let you do all of that, and a little more!
Capitalizer is a utility that allows you to change the case of text in
a selection in various ways.  You can change all selected text to:
    * UPPER CASE
    * lower case
    * Title Case
    * Sentence case.

If you're like me, and I know I am, you'll just love it!

Written by Rui Campos

How to contact me:
e-mail: rufus@ici.net
web:    http://www.ici.net/cust_pages/rufus/rufus.html


#### BINHEX     ccontextual-menu-10.hqx   ****

From: dair@dircon.co.uk
Subject: CContextualMenu 1.0


CContextualMenu is a utility class that provides Contextual Menus for
PowerPlant applications.

It uses the Contextual Menu Manager if it's available, and the normal
Mac OS Menu Manager if not.

This allows applications to support Contextual Menus under both Mac OS 8
and System 7, without having to write additional code.

CContextualMenu requires Metrowerks CodeWarrior and PowerPlant.


-dair

<mailto:dair@kagi.com>
<http://www.kagi.com/authors/dair/>



#### BINHEX     cd-icon-killer-100-asm68k.hqx   ****

From: Peter N Lewis <peter.lewis@info.curtin.edu.au>
Subject: source/asm68k - CDIconKiller 1.0.0
Date: Sat, 18 Jun 1994 05:32:17 +0800



--========================_20335185==_
Content-Type: text/plain; charset="us-ascii"

CDIconKiller 1.0.0 Copyright 1994 Quinn & Peter N Lewis

Install this INIT to suppress custom icons on CD-ROM drives.
This tends to speed up your CD-ROMs by a factor of about
a zillion.

Caveats
  Only works for Apple's CD-ROM driver.
  Works under System 6 :-)

Warning: This program was written in 4 hours.

Quinn <quinn@cs.uwa.edu.au>
Peter N Lewis <peter.lewis@info.curtin.edu.au>

Version History

1.0.0 05:30 18 June 1994 Original Release



--========================_20335185==_
Content-Type: application/mac-binhex40; name="CDIconKiller_Source.sit"
Content-Disposition: attachment; filename="CDIconKiller_Source.sit"


#### BINHEX     cdef-fjci-fb.hqx   ****

Date: Mon, 3 Oct 94 13:20:03 CDT
From: bobs@saintjoe.edu (Bob Schenk)
Subject: [*] CDEF-FJCI (two control definitions with source code)



Attached is CDEF-FJCI, a folder containing two control definitions with
source code in FutureBASIC, the only serious BASIC for the Macintosh.
One is a simple up/down arrow, the other a five-icon button. Included
is a demo which shows how they work and also puts in a plug for two
CD-ROMs of typefaces I designed.

These files may be included on CD-ROM collections as long as no
changes are made to them.

Robert Schenk
bobs@saintjoe.edu

PS The FJCI stands for "From Jasper County Indiana."




#### BINHEX     cdef-template-10.hqx   ****

From larson@BASE.CS.UCLA.EDU Tue Mar 14 10:41:22 1995
Date: Tue, 14 Mar 1995 10:41:13 -0800 (PST)
From: Chris Larson <larson@BASE.CS.UCLA.EDU>
Subject: CDEF Template 1.0 : CDEF template in C


Enclosed is the first public release of a skeleton for constructing CDEF 
resources in CodeWarrior C; source is, obviously, included.

Info-Mac Moderators:
    This probably belongs in the /dev/src directory.
    Feel free to include this on any CD you choose.

--Chris
_______________________________________________________________________________
Chris Larson -- Amateur Macintosh Geek, CoBase Research Assistant
Internet: larson@kingston.cs.ucla.edu                  (insert disclaimer here)


#### BINHEX     cdev-stub-cw.hqx   ****

From: Gordon Watts -- U of Rochester <GWATTS@WHCDF.FNAL.GOV>
Subject: FWD: cdev stub for CodeWarrior
Date: Tue, 15 Mar 1994 8:38:30 -0600 (CST)

From:	SMTP%"cwarrior@netcom.com"   15-MAR-1994 07:22:16.60
To:	GWATTS
CC:	
Subj:	cdev stub for CodeWarrior

Mime-Version: 1.0
Content-Type: multipart/mixed; boundary="========================_27555112==_"
Date: Tue, 15 Mar 1994 07:25:59 -0500
To: cwarrior@netcom.com
From: joe zobkiw <zobkiw@datawatch.com>
Subject: cdev stub for CodeWarrior
Message-Id:  <9403150724.aa05119@gateway.datawatch.com>
Sender: owner-cwarrior@netcom.com
Precedence: list
Reply-To: cwarrior@netcom.com



--========================_27555112==_
Content-Type: text/plain; charset="us-ascii"

This next one is a stub that will allow you to write a cdev in CW (even
though it currently does not allow you to use an id that is a negative.)
The code is commented well enough to understand what is going on.




--========================_27555112==_
Content-Type: application/mac-binhex40; name="Warrior_cdev_stub.sit"
Content-Disposition: attachment; filename="Warrior_cdev_stub.sit"


#### BINHEX     cellusoft-graphics-demo-c.hqx   ****

From: kenlong@netcom.com (Ken Long)
Subject: Cellusoft-sprite-demo-c
Date: Mon, 10 Jan 1994 18:12:38 -0800 (PST)

Hi there, Mac Gifties!

This file is Think C 5.0.4 source for the Cellusoft Graphics Demo, by 
Tony Small, author of the game "Quagmire."  It demenstrates color 'PICT' 
clipping to get sprites and animate them over a color background, using 
offscreen pixmap maniulation.

-Ken-



#### BINHEX     cellusoft-graphics-p.hqx   ****

From: kenlong@netcom.com (Ken Long)
Subject: Cellusoft Graphics Pascal
Date: Sun, 20 Feb 1994 20:45:55 -0800 (PST)

Tony Small's Cellusoft Graphics Routines in Pascal.  Puts up a
window, adds a color 'PICT' for background, then animates his
"walking eyes" over it, from left to right.
-------------------------CUT HERE-------------------------------

#### BINHEX     change-type-creator-16-c.hqx   ****

From: markf@post.QueensU.CA (Mark Fleming)
Subject: ctc v1.6 src
Date: Wed, 19 Jan 1994 18:23:16 -0500



--========================_23531304==_
Content-Type: text/plain; charset="us-ascii"

Enclose is source code for:

This is a greatly modified version of V1.4 and v1.5 of ctc type convert
already in the Info-mac archive.

        ctc V1.6 - File Typer and End of line fixer
                   (Supports auto suggestion for TIFF, BMP, EPSF and
                    options to only convert creator or type of file)

NOTE: TranslatorPackage.sit provided in separate posting contains the
compiled version.

<<<<<=- =- =- =- =- =- =- =- =- =- =- =- =- =- =- =- =- =-=-=->>>>
Mark Fleming, Computing & Communications Services
Queen's University at Kingston Ontario, Canada, K7L 3N6
E-mail: markf@post.queensu.ca           AppleLink: CDA0448
Phone: (613) 545-2039                    Fax: (613) 545-6798
** The Author of NetDoctor, A Lab and Network Maintainer Package **



--========================_23531304==_
Content-Type: application/mac-binhex40; name="ctc_v1.6.src.sit"
Content-Disposition: attachment; filename="ctc_v1.6.src.sit"


#### BINHEX     chat-11-pas.hqx   ****

Date: Sat, 12 Dec 1992 12:00:45 +0800 
From: Peter N Lewis <peter@ncrpda.curtin.edu.au>
Subject: source/pascal/chat-110.hqx 


This is the pascal source for Chat 1.1.0, a background only application
that lets Macs with MacTCP 1.1 serve as a very primitive IRC.  

The source is very simple, only around 500 lines, and could be used
as example code if you wanted to write your own MacTCP server.

Chat is free and should run under System 6 or 7, and requires 
MacTCP 1.1 or later.

Hope its useful,
   Peter.

Chat 1.1.0 Copyright 1992, Peter N Lewis <peter@cujo.curtin.edu.au>


#### BINHEX     chef-11-c.hqx   ****

From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Chef 1.1 (source code)
Date: Sat, 26 Feb 1994 23:31:07 -0500 (EST)

Chef is a small utility to convert text files to mock Swedish, like the Swedish
chef on the Muppets.  Version 1.1 supports RTF files and fixes several
technical bugs.  This will be the last version of Chef; all future
enhancements will be part of the larger text conversion program, Dialectic.
Supports drag and drop of any number of text files of any length.  This
archive contains complete THINK C source code, project files, and resource
files.  Application also available; check ftp sites or e-mail f8dy@netaxs.com.
Finger f8dy@netaxs.com for complete program list.  Copyright (C) 1994, Mark
Pilgrim.  Please read enclosed file "GNU General Public License" for licensing
details.


#### BINHEX     chess-cpp.hqx   ****

From: Lloyd Wood <L.H.Wood@student.lut.ac.uk>
Subject: Chess++ source code
Date: Mon, 2 May 94 21:25:25 BST

This is the source code to Chess++, a freeware mac chess-playing program.

I am not not the author. Steve Bushell can be contacted as
<python@world.std.com>

 -- L.
_____________________________________________________________________________
L.H.Wood@student.lut.ac.uk     Email me for a copy of the Mac screensaver FAQ


#### BINHEX     clut-fade-131.hqx   ****

From: MarkWomack@aol.com
Subject: clut_fade 1.3.2

This version fixes bugs, one of which would significantly slow down 
copybit operations after fading the monitor.
 
This is a library of screen fading operations which can be used to make 
your games more professional looking.  Not only does the clut_fade 
library let you fade to and from black, but it also provides routines to 
fade to and from a specific color or a specific clut.  It also provides 
some control over which monitors are faded.  Demo application, library, 
and source code are included.  C and Pascal.

fade_to_black function written by Jonas Englund, modified by Mark Womack 
for multiple monitors.  

fade_to_clut function written by Macneil Shonle.

Pascal version written by Christian Franz.


#### BINHEX     combo-box-12-c.hqx   ****

From: (Steve Dwire) steve_dwire@linq.pcci.edu
Subject: ComboBox Source 1.2

This is the source code for version 1.2 of Pensacola Christian College's
freeware ComboBox external area for 4th Dimension.  The following changes
have been made since the 1.1.1 release:

o Enabled the Paste menu item when appropriate.  

o Made sure that the selected item in the list box always stays in sync
  with the text in the editable area.

o Closed the list box window on the first idle event after the layout
  window is moved.  

o Used the black & white PICT resource for the popup-indicator button
  on display devices having four (4) or fewer colors.

o Eliminated the last vestiges of the dead scroll bar problem.

o Allowed string arrays to be used for CB_FillLst() rather than requiring
  all arrays to be of type text.

o Added CB_GetContRef() function to make ComboBox compatible with
  Foresight Technology's "Container" and Automated Solutions Group's
  "Habitat."

o Added DrawBox flag to CB_DefSetFlags() and CB_SetFlags().

o Made the list window show up in the right place (above vs. below the
  area) even on monitors other than the main monitor.

o Started using the real arrow cursor.

o Corrected a bug in which a compiled database would execute the
  ComboBox's script twice when a button was clicked, considering it
  unmodified both times.  

o Fixed a bug where the text-entry area did not reflect the new size
  after the font was changed.

This archive contains all C source code files, resource files and 
Metrowerks(R) CodeWarrior(tm) 9 project files necessary to compile and
build version 1.2 of the ComboBox external area for 4th Dimension.

These project files use a beta-level release of ACI's Platform-
Independent Extension-Authoring Kit.  You will need to acquire this
kit for yourself in order to build the ComboBox extension.  Contact
your local ACI representative for information on obtaining this kit.


#### BINHEX     conics-cpp.hqx   ****

From: aidan@xanadu.kublai.com (Aidan Cully)
Subject: MacConics Source Code - C++

This is the full source code to the Conic sections program, written in C++.


#### BINHEX     control-panel-094-c.hqx   ****

From: kenlong@netcom.com (Ken Long)
Subject: ControlPanel-0.9.4.sit.hqx
Date: Wed, 27 Jul 1994 21:34:57 -0700 (PDT)

Folks:

I get to postin' here and there and forget where I put everything.  I 
scoured a.s.m., merit and sumex and found this NOT!

So here it is.  will post to a.s.m., too.

Author: Ken Worley.
Type:  Think C 6.0.1 project.
Content: Source for a sample control panel, sample INIT and sample 
patch. Built examples of each. 
Additions:  Ken Long added Think C 5.0.4 projects, to make it easier on 
the po' folks.

I tried these and the CP and INIT *both* show their icons at startup.  
The CP won't open unless loaded, but has nice features for a shell.  I 
also tried building all three and there were no problems with that.

-Ken-

-------You are not Morg.  You are not Imorg.  What are you?-----------


#### BINHEX     control-panel-tester-70-c.hqx   ****

Date: 04 Mar 1993 13:07:09 -0500 (CDT) 
From: Evan Olcott <EOLCOTT@vx.cis.umn.edu>
Subject: Cdev Tester 7.0 

/***************
*
*  System 7.0 Control Panel tester
*
*  )1993 Triplo Software
*
****************/

The Control Panel tester is a source code file that you can use to test
your cdev code resource files under the THINK C 5.0 environment with little
difference from the operating system.  

Any comments, questions, bugs, etc. please report them to:
Triplo Software
c/o EOLCOTT@vx.cis.umn.edu

If you think I expect money from this, you're crazy. It's freeware, I guess.
Have fun. Just credit me where you think it's due.

----------splice 'n' dice here------------

#### BINHEX     control-strip-shell-c.hqx   ****

Date: Fri, 18 Nov 1994 14:21:48 -0500
From: Marty Wachter <mrw@welchgate.welch.jhu.edu>
Subject: CSShell is a sample Control Strip Module project

CSShell is a sample Control Strip Module project which shows you how to
use a popup menu in a Control Strip Module. The project is a MetroWerks
CodeWarrior file created using CW Release 4.


#### BINHEX     controls-gh-cdefs-11-c.hqx   ****

From: grhowes@students.wisc.edu (Glenn R. Howes)
Subject: Controls GH 1.1 submission
Date: Sun, 24 Apr 1994 16:20:44 -0600



--========================_11780882==_
Content-Type: text/plain; charset="us-ascii"

Enclosed is the updated C code and resources for a pair of control 
definitions (CDEF's) which I originally released last fall. The
controls are a simple slider, similar to the Sound control panel's
slider, and a flag identical to that used by the Finder in list
views. I'm supplying this so other programmers can easilly 
include these elements in their own dialogs and windows (they have 
no direct use for the general public).

For an application which uses both, see my recently released Siege 
Watch 2.0.

Changes:
 The flag control is unchanged (it's already perfect).

 The slider now implements a solid thumb instead of the default
 outline dragging. I've also removed the pageup and pagedown
 control parts.

--glenn
grhowes@students.wisc.edu



--========================_11780882==_
Content-Type: application/mac-binhex40; name="Controls_GH.cpt"


#### BINHEX     cookie-nshell.hqx   ****

From: JOhearn@aol.com
Date: Fri, 28 Oct 1994 17:02:40 -0400
Subject: A cookie command for the nShell

Hi,

This is a version of the Un*x cookie command for the nShell.  Features:

 -- Cookies are STR resources and may be changed using ResEdit

 -- Source Code is included

Jim O'Hearn (johearn@aol.com)


#### BINHEX     copy-bits-demo-31-c.hqx   ****

From: kworley@fascination.com (Kenneth Worley)
Subject: CopyBits Demo 3.1

CopyBits Demo 3.1 is Freeware and may be included on the CD version of the
Info-Mac archives.

Requires System 7 or later.

CopyBits Demo is an example project that gives several examples of using
CopyBits to copy pictures both on screen and between offscreen Graphics
Worlds and an onscreen window (as well as between GWorlds). It also allows
you to experiment with using CopyBits, CopyMask, and CopyDeepMask using
different images, masks, and transfer modes. It does all the following
things using CopyBits and its variations:

1) Fade an area of the screen to black (using three different methods).
2) Demonstrates "flickering" regular animation vs. smooth animation.
3) Fades one image into another.
(and new in v2.0)
4) "Pixelizes" and "depixelizes" an image (an animation effect where the
picture ends up in a very blocky representation of the original).
5) Blurs an image.
6) Flips an image horizontally or vertically.
7) Applies fading effects to the entire screen rather than just part of a
window.
(and new in v3.0)
8) Slides one image onto another from any of the four major directions.
9) Imposes one image onto another inside a growing circle, or outside a
shrinking circle.
10) Demonstrates several of the techniques on the full screen rather than
just part of the window.
11) Demonstrates font anti-aliasing using CopyBits with the ditherCopy
constant added to the transfer mode.

All the code and the project file to build the demo app is included
(Metrowerks CodeWarrior C). The code is well documented.

Written by Kenneth Worley - KNEworley@aol.com


#### BINHEX     copy-paste-tools-11-p.hqx   ****

From: (Julian Miller) julian@sierra.net
Subject: CopyPaste Tools Sourcecode 1.1

These source code examples are for creating CopyPaste Tools. CopyPaste is 
an extension that can be found on shareware sites on the net. CopyPaste 
adds more clipboards and clipboard tools to the Mac. CopyPaste Tools are 
actually FKey coderesources created with MCW or any language. These 
Fkey/code resources are what we use in CopyPaste as tools to work on the 
clipboard contents. Now you can use these examples to make new tools and 
install them in CopyPaste. Add new abilities to the Mac with CopyPaste 
and tools that you create. We would enjoy seeing your creations. Feel 
free to send them to one of us so we can add them to this library of FKey 
source code examples and perhaps include some of them in the next version 
of CopyPaste.

Place clipboard text or picture processing at users fingertips.



-/\-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-\/ Julian Miller
-/\ Script Software International
-\/ (916) 546-9005 Voice
-/\ julian@sierra.net
-\/ http://www.svr.com/scriptsoftware/ 
-/\ Programming, Consulting & Web Work
-\/-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

Check out our popular shareware clipboard utilitly CopyPaste at 
http://members.aol.com/copypaste1/index.html
choosen by MacUser as the utility of the year 1996
http://www.zdnet.com/macuser/mu_1096/handson/shareware.html
also see the MacWeek article about CopyPaste at
http://www.zdnet.com/macweek/mw_1021/news_copypaste.html


#### BINHEX     core-class-library-11-cpp.hqx   ****

Date: Fri, 16 Sep 1994 12:12:29 +0200
From: msenecla@disunms.epfl.ch (Martin Seneclauze)
Subject: CCL_1.1.cpt.hqx


CoreClass is a class library for C++ developers. It offers a solid base to develop advanced class systems:

      - Support for developing complex object structures: multiple linked lists, tree linked lists logical connections, etc...
      - A message system to send/receive commands into multiple linked list structures, with filters.
      - A basic error tracking system.
      - A system for duplicating objects with various heritage levels.

CoreClass is very easy to work with, and does not rely on a particular OS, it can be compiled with a regular C++ compiler (the compiler does not have to support
 "templates" or "exceptions").



#### BINHEX     cout-p-strings-cpp.hqx   ****

Date: Sat, 8 Jul 1995 12:13:16 -0500
From: s-bytnar@uiuc.edu (Steven Bytnar)
Subject: C++:  cout << (p-strings)

Hi,

This is c++ source code that demonstrates how to override any output stream
so that it is possible to easily output p-strings that the Macintosh
Toolbox uses excessively.
The code included compiles under CodeWarrior, but should really be
compatible with any c++ compiler in existance.

--Steve


#### BINHEX     cpreferences-10-cpp.hqx   ****

Date: Tue, 5 Jul 1994 21:13:02 -0700 (PDT)
From: Spencer Low <spencerl@crl.com>
Subject: CPreferences 1.0 - Class for CodeWarrior PowerPlant

CPreference Class 1.0
---------------------

by Richard A. Bray
President
Compu-Phobic, Inc.
AOL: CompuFobic

I (that's me, spencerl@crl.com) am *NOT* the author of this class. This 
is a simple C++ class for implementing preference files with 
CodeWarrior's PowerPlant class library. Here's an exerpt from the docs:

This class was created to simplify the creation of preference
files for an application.

The object is very general and simple to use.

When MW C++ supports templates, I will rewrite the class to support
them. This will allow an easy way to create multiple preference files
for applications that need them.

Use of CPreferences:

	1. Add "CPreferences* mPrefs" to your application class.

	2. Add this line to your constructor.
		mPrefs = new CPreferences('CPI6', "\pTextStreamer 3.0 Prefs");
		// 'CPI6' is the creator of the file.
		// "\pTextStreamer 3.0 Prefs" is the name of the file.

	3. Add this line to your destructor
			delete mPrefs;

	4. In order to access the data in your data structure, you will
		need to add accessor functions to CPreferences.
		

In the next version I will also include methods for using a Preferences
dialog.


#### BINHEX     crooked-mouse-10-c.hqx   ****

From: f8dy@netaxs.netaxs.com (Mark Pilgrim)
Subject: Crooked Mouse 1.0 (source code) 
Date: Sun, 14 Nov 1993 03:11:39 -0500 (EST) 

Crooked Mouse is a fun little INIT which will cause your mouse to move
at an angle 45 degrees counterclockwise from the angle you moved it.
This INIT is free and is distributed under the GNU General Public License;
this archive contains complete THINK C 6.0.1 source code and project files
for the INIT.  If you do not have FTP access, e-mail the author for a copy of
the INIT, the source code, or a list of other programs by the same author.
The address is f8dy@netaxs.com.

This code demonstrates the basics of writing and installing a VBL, and the
manipulation of undocumented low-memory globals.  This code should work under
any system, with any monitor, on all Macintoshes.  Please report any
bugs/comments/suggestions to f8dy@netaxs.com.

Crooked Mouse 1.0 is copyright 1993, Mark Pilgrim, MerriMac Software Group.


#### BINHEX     ctb-tool-c.hqx   ****

From: peterc@gnu.ai.mit.edu (Peter Creath)
Subject: CTB Connection Tool C source
Date: Sun, 20 Feb 1994 04:52:41 -0500



--========================_6967280==_
Content-Type: text/plain; charset="us-ascii"

Here is the skeleton code for a Communications Toolbox connection tool.
It's fairly well documented and describes what needs to be implemented to
make it fully functional.

Note: I am the author.




--========================_6967280==_
Content-Type: application/mac-binhex40; name="Connection_Tool_=.sit"
Content-Disposition: attachment; filename="Connection_Tool_=.sit"


#### BINHEX     curl-push-button-24.hqx   ****

From: hsoi@eden.com
Subject: CURLPushButton 2.4 - a PowerPlant class


A Metrowerks PowerPlant inherited class geared towards helping your 
application
become Internet-savvy.  It allows you to put clickable buttons in places 
(e.g.
your About box) that will look like a URL in a web browser...click on the 
URL
and go right to there!  Great for listing the web page for your software,
the email address for contact/support, the ftp site where users can get
updates or whatever you want!  You list the text, they can see it, copy it
down, whatever... and then just click and visit it.  VERY HANDY!! VERY 
COOL!!

The class is even set up that the text of the button can say one thing but
then still visit the URL.  For example, the About Box displays your name
and you click on it and it visits your personal web page or something.  
Point
is, the button can list the URL text or not...it's a flexible class.

There is a demonstration application included in the archive to help you
see how it works as well as help and tips for implimentation.  Furthermore
there is a CTYP file that you can use to aid in the editing process
(for use with Metrowerks Constructor).

For complete information, please read the README file enclosed in the
archive.

Thanx, and enjoy!

John C. Daub
Hsoi's Shop
<http://www.eden.com/~hsoi/prog.html>



#### BINHEX     curses-c.hqx   ****

From: ROBERT@MASTER.UCHICAGO.EDU
Subject: curses.sit
Date: Wed, 1 Jun 1994 3:02:21 -0500 (CDT)

Source code for an implementation of curses for Macintosh (using Think C)
and MSDOS. Curses is a Unix subroutine library for managing text screens. 
This is a fairly complete implementation that should make it possible to
port curses apps to the mac without too many changes (termcap stuff isn't
supported, though).  See enclosed readme files for more details.  This
is unsupported public domain code.

* Robert Zimmerman
* robert@master.uchicago.edu

[file curses.sit.hqx:]
---------------------------------------------

#### BINHEX     custom-new-cp.hqx   ****

Date: Sun, 04 Dec 1994 00:32:51 -0500
From: pottier@fregate.ens.fr
Subject: Re: [Source] Here's my own operator new for CW

Recently I rewrote my own implementation of the new and delete
operators (under CodeWarrior 4.5). My own implementations have
the main two following advantages over the standard ones:

- They can take memory from the temporary zone if the application
  heap is full
- They release memory to the OS when it isn't needed any more

I like this behavior better than the standard one, because it allows
me to give an average-sized heap to my application and yet still be
able to handle big tasks requiring unusual amounts of memory.

I thought I'd share my code with the rest of the world, so here it
is. I have binhexed it to preserve the font settings (it's more than
80 columns anyway).

Let me know if you think the idea can be improved, or if you have
good reasons why it isn't a good idea!

Cheers,

Francois Pottier                                            pottier@dmi.ens.fr


#### BINHEX     cverscaption-14.hqx   ****

From: hsoi@eden.com
Subject: CVersCaption 1.4 - a PowerPlant class


A Metrowerks PowerPlant� inherited class that automatically displays an
application version string (e.g. in the About Box). This string is taken
from the 'vers' resource, so it always displays the correct number
automatically. Never a need to have to change it with each revision to your
product, just update your 'vers' as you always have to do... it handles
the rest. :-)

For complete information, please read the README file enclosed in the
archive.

Thanx, and enjoy!

John C. Daub
Hsoi's Shop
<http://www.eden.com/~hsoi/prog.html>



#### BINHEX     cw-cdev-framework-111-cpp.hqx   ****

Date: Tue, 16 May 1995 12:10:02 -0400
From: chewey@pumpelly.monad.net (Matthew E. Axsom)
Subject: CW CDEV Framework 1.1.1

CW CDEV Framework 1.1.1 is just that, an oop framework for creating cdev's in
Metrowerks CodeWarrior. It's based on a oop cdev framework that Symantec
supplied with its complier.

Contains a "ready to compile" 68K CW 6 project that will build a
"do-nothing" cdev using the framework.

Also includes a commented sample project and source code from which you
can build a cdev that actually does something ;) It should enable you to
see how to use the framework.

Version Info
Changes from 1.1
New "Usage Notes" file for FAQ's
Added stub cdev code resource to fix problems with multi-segment
     cdev's using virtual functions.
Fixed bugs in error checking

Changes from 1.0.1
Updated code to ease porting Symantec OOP cdev projects.
Added additional error checking.
More comments.

Best of all, the framework is freeware. Enjoy!


#### BINHEX     darth-fader-10-c.hqx   ****

From: f8dy@netaxs.netaxs.com (Mark Pilgrim)
Subject: Darth Fader 1.0 (source code)
Date: Sun, 21 Nov 1993 04:24:08 -0500 (EST)

Darth Fader will cause your Macintosh to quickly fade all attached screens to
black and back when it beeps.  This INIT is free and is distributed under the
GNU General Public License; this archive contains complete THINK C 6.0.1
source code and project files for the INIT.  If you do not have FTP access,
e-mail the author for a copy of the INIT, the source code, or a list of other
programs by the same author.  The address is f8dy@netaxs.com.

This code demonstrates the basics of INIT initialization and loading, 
trap trapping, and advanced gamma work. This code will only work on
monitors with gamma -- the Mac II line, and any color Mac with a non-built-in
monitor.  (It has not been tested on a Color Classic; if anyone has one and
feels like testing, please let me know if it works.)  Please report any
bugs/comments/suggestions to f8dy@netaxs.com.

Darth Fader 1.0 is copyright 1993, Mark Pilgrim, MerriMac Software Group.


#### BINHEX     dbl-library-p.hqx   ****

From: kenlong@netcom.com (Ken Long)
Subject: DBL Pascal Lib.
Date: Mon, 21 Feb 1994 15:01:05 -0800 (PST)

//* Posted by Kenneth A. Long *//
//* Author's comments follow. *//
-----------------------------------------------------------------
David B. Lamkins
DBLamkins@aol.com

Source code released by David B. Lamkins, Feb. 1994.

Here's a collection of Pascal routines that I've developed and 
used over the years.  All of these are for THINK Pascal version 4.
Not all of these are production-quality - some parts are only 
minimally tested.

Terms of distribution are followed by a brief contents list:

* This software is provided as-is, in the hopes that you will find 
it useful.
* The software is provided without warranty of any kind.
* I am releasing this software to the public because I have no
intention of further developing it; I will not answer questions
regarding this software.
* This software is Copyright David B. Lamkins.
* I grant permission for you to reuse this software, provided that 
my copyright is included as prominently as your own, in the form
"Portions Copyright 1994 David B. Lamkins."
* The Macintosh type/creator signatures used for the programs are
registered with Apple Computer, Inc. in my name, and may not be
reused.
* You may not release derivative programs under their original 
names of PwrSwitcher, TimeTeller, or LaunchFile XCMD.


Brief Contents

Agendas
Animated Cursor
Async Sound
Call Chain
Checksum
CRC
Debugger Presence
ICON control CDEF
sicn control CDEF
Pop up menu CDEF
Error Signals
Fast Bit Vectors
Hash Tables
INIT Shell
Layer Manager IF
Levenshtein Matching
Short Fractions
Submenu Delay
Preferences
Queues
RSRCRuntime Bug Fix
SFGetFolder 6
String Lists
Transactions Mgr
Dialog Utils
Pop up Utils
Block Zero
VM Traps IF

David B. Lamkins
DBLamkins@aol.com
---------------------------CUT HERE-----------------------------

#### BINHEX     dcl-ansi-c.hqx   ****

From: k044477@hobbes.kzoo.edu (Jamie R. McCarthy)
Subject: dcl-ANSI (all) 
Date: Thu, 22 Apr 93 0:45:35 EDT 

C's method of declaring variables and functions is one of the most confusing
parts of the language.  Even old pros will double- and triple-check their
arrays of pointers.  And the pathological cases are truly bizarre:
"int(Int(int(Int)))" declares a function that accepts and returns an int, but
"int(Int(int(int)))" declares a function that accepts another function,
and _that_ function accepts and returns an int.  Weird stuff.
 
"dcl-ANSI" lets you type in a declaration, hit a few keys, and see what it
means, in plain English.  Tell it "int (*x[])()" and it tells you x is "type
array[] of pointer to function with undefined parameters returning type int."
It's based on the "dcl" program in section 5.12 of K&R, but, as the name
implies, it fully understands ANSI.  (Well, OK, there are a few limitations.
See the readme for details.)  And it's public domain.
 
There are two editions of this utility.  It was first created as a BBEdit
extension, because (1) I like BBEdit and (2) BBEdit provides a particularly
nice environment for hacks like this to live in.  If you keep BBEdit open
while programming, you may prefer this version.  Otherwise, you'll probably
want to use the second edition, the FKEY, because it's simpler:  just
select your declaration, hit cmd-C and cmd-shift-9 [*], and the English
explanation is in the clipboard, waiting for you to paste it somewhere.
 
This file contains both editions and their complete Think C 5 source code.

Suggested archive destination:  .../source/c/dcl-ansi.hqx
--
 Jamie McCarthy 	Internet: k044477@kzoo.edu	AppleLink: j.mccarthy


#### BINHEX     debug-window-10-c.hqx   ****

Date: Mon, 17 Apr 1995 16:57:31 -0700 (PDT)
From: Eric Gorr <ericg@gladstone.uoregon.edu>
Subject: DebugWindow 1.0

For use by those of us who still like the old style of debugging.

Supports multiple debug windows. 
Independent of CodeWarrior and Symantec C++.

See enclosed README for more info.

Free!

have fun.

Eric Gorr
egorr@hebb.uoregon.edu


#### BINHEX     detect-new-volume-cpp.hqx   ****

From: oleg@ponder.csci.unt.edu (Kiselyov Oleg)
Subject: Detect New Volume - Display volume's message-of-the-day
Date: Thu, 17 Mar 1994 14:32:46 -0600



--========================_13948252==_
Content-Type: text/plain; charset="us-ascii"

What:   Detect a new mounted volume and "double-click" at a
        document/application (if found) at a "standard" location on that volume
What for: telling the user (a student) what's new on some particular
        volume and/or how to use it. The document "clicked" by the
        present WatchVol program may be a text document about what's new
        on the volume. Or it may be any application that somehow prepares
        the student how to use the (file server) volume, whenever the
        volume is mounted.
Hot points: Dynamic (transient) patch of the system: doesn't require
            restarting the system, gets uninstalled when the application quits.
Contents:
        WatchVol        - Application (watchdog) itself
        Watch MountVol.pi  - project and resource files to build it
        Watch MountVol.pi.rsrc
        WatchMount.cc   - Source code of the main module (C++)
        launcher.cc     - Launches an application-creator given FSSpec of
                          the document/application
        MountVol init.pi - project to compile an Init (not INIT!) code
                          resource that patches the system on-the-fly
        MountVol init.c - Source code of the _MountVol interceptor
                          (assembly inlined into a dummy C program)
        The source code contains enough (I hope) comments to show what
        a particular piece of code does, as well as some tricks involved
Language: Symantec C/C++ 6.0 and built-in Assembler
System: System 7.x, uses AppleEvents. Tested on IIsi, IIci,
        Quadras and Centres.
Patching the system: _MountVol system trap is patched when the application
        starts up. The patch is removed (i.e., the trap is restored to
        its original state) when the application quits.
How to run: place the application into your "Startup Items" folder;
        the application quits when it receives a "QUIT" event, or
        when it's in the foreground and any keyboard key is pressed.
Note: the source code uses a "standard" environment, see myenv-notify.cpt
      For completeness, the library and the .h file are included as a separate
      CompactPro archive. However, they (complete with the source code)
      can be found at various archive sites under the name 'myenv-notify'
Comments to: oleg@ponder.csci.unt.edu, oleg@unt.edu



--========================_13948252==_
Content-Type: application/mac-binhex40; name="DetectNewVolume.cpt"
Content-Disposition: attachment; filename="DetectNewVolume.cpt"


#### BINHEX     devils-cubes-101-c.hqx   ****

From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Devil's Cubes 1.0.1 (source code)
Date: Tue, 14 Dec 1993 18:50:12 -0500 (EST)

The Devil's Cubes are a set of four cubes, each painted with four colors
with some colors repeated.  All four cubes are different.  The object of
the game is to rotate the four cubes until the top of each Devil's Cube
is a different color than the top of the other three cubes, and likewise
for the bottom, front, and back of each Devil's Cube.  Sound simple?  Try
it for a few hours.

Devil's Cubes 1.0.1 fixes some technical bugs and makes some changes to the
icon suite; you may need to rebuild your desktop if you already have version
1.0.  This game is distributed under the GNU General Public License; this
archive contains complete THINK C source code for the Devil's Cubes
application, as well as complete source code for an external application
used to set up the game's self-integrity checker.

This archive contains both THINK C 5 and THINK C 6 project files.  Use
whichever one you wish and throw away the other.

This code handles, among other things, events, menus, apple events, a prefs
file, Gestalt environment checking, asynchronous sounds, hierarchical menus,
dialogs, windows, off-screen bitmaps, file management, standard file dialogs,
and the soon-to-be-famous "cough to continue" modal dialog filter proc.  None
of this is very well commented, but feel free to direct any questions to
f8dy@netaxs.com.

Devil's Cubes 1.0.1 is copyright 1993, Mark Pilgrim, MerriMac Software Group.


#### BINHEX     diagram-c.hqx   ****

Date: Thu, 20 Apr 1995 13:10:00 -0700
From: davis@wln.com (Ryan Davis)
Subject: DiagramC

DiagramC (for the Macintosh, in C)
The original version of DiagramC can be found in any alt.sources archive,
it is provided in Fortran source code and it works quite well. I translated
DiagramC.F to DiagramC.c using MacF2C and MetroWerks 5.5. However, MacF2C
does a very good job of converting the source to Compiler independant code;
it should work on either Symantec or MetroWerks...

I retain the rights to the C version. Future versions will be conversions
of the C source, not the Fortran version. It seems like the original author
left no copyright or anything, and he seems to hate C, so I don't think he
will have a problem with me keeping this version.

NOTICE
Because this package was compiled using F2C, it will require F2C to
recompile. There are two libraries that F2C creates in order to bridge the
gap between Fortran and C. These files were simply too big to include in
this package. Sorry... I will work on excluding as many of the fortran
functions in future versions as I continue the conversion to something
readable...

FUTURE VERSIONS
Future versions of DiagramC will have a drag & drop interface via DropUNIX,
a library I wrote to help me convert UNIX file processing source to a Drag
& Drop app for the Macintosh. Future versions will also have a Preferences
dialog allowing you to set your default controls once and let every file
dragged onto the application use them.

COST
This version of DiagramC is being released as Email-ware (damn I do hate
these stupid little *-ware phrases)... If you download this (even if you
DON'T USE IT) please email me at:

                davis@wln.com

and tell me that you got it... Thanks...

DiagramC (M/C) �1995 Ryan Davis, Zen Spider Software


#### BINHEX     dialectic-12-c.hqx   ****

From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Dialectic 1.2 (source code)
Date: Mon, 4 Apr 1994 19:38:02 -0400 (EDT)

Dialectic 1.2 is a general text conversion utility to pass text through a
"dialect" filter of your choice.  Version 1.2 adds a "convert clipboard"
feature, four new dialects, an improved Chef dialect, massive technical
improvements, and Balloon Help.  This version includes the following dialects:
Chef, Fudd, WAREZ, Underwater, Middle English, Pig Latin, Morse Code, Op, and
Rot-13.  Supports drag and drop of any number of text, RTF, or Teachtext
"read-only" files of any length.  This archive contains complete C source code
and related project files.  Application also available; check ftp sites or
e-mail f8dy@netaxs.com.  Finger f8dy@netaxs.com for complete program list.
Copyright (C) 1994, Mark Pilgrim.  Please read enclosed file "GNU General
Public License" for licensing details.  Have a nice day.


#### BINHEX     dialog-controls-11-c.hqx   ****

Date: Tue, 9 May 1995 16:47:23 -0700
From: tclement@hmc.edu (Todd Clements)
Subject: DialogControls11.c; Code for handling controls in dialog boxes

 DialogControls.c by Todd Clements (tclement@hmc.edu)
  This source code shows how to do different things with dialogs:
     1) Set the window font and size
     2) Patch NewControl() so that you have controls in the window font
         (thanks to Jens Alfke <jens_alfke@powertalk.apple.com> for the code)
     3) Use Popup Menus in modal dialogs
     4) Use AppendDITL() to get a NewsWatcher-like preferences box
     5) Use styled text edit records from resources to display text
     6) Write a filter for a ModalDialog
     7) Use MovableModal dialog boxes

 Some of this code is stolen from my own program, others stolen from
 other people, but it's all here for you!

 If you have any comments about the code, any improvements/additions/bugs,
 please feel free to contact me at the above address.

 I make no guarantees regarding the decency of this code.  Run it and
 use it at your own risk.

  January 26, 1995  -  1.0 - First release
  May 9, 1995       -  1.1 - Second release
                        Changed to MovableModal dialog box
                        Added "Reset Panel to Defaults" button
                        Disabled controls when window deactivated


#### BINHEX     dialog-controls-c.hqx   ****

 X-Sender: tclement@osiris.ac.hmc.edu
Date: Sat, 4 Feb 1995 00:39:09 -0800
From: tclement@hmc.edu (Todd Clements)
Subject: DialogControls.c; dialog controls in the window font

 DialogControls.c by Todd Clements (tclement@hmc.edu)
   This demo shows how to do different things with dialogs:
      1) Set the window font and size
      2) Patch NewControl() so that you have controls in the window font
         (thanks to Jens Alfke <jens_alfke@powertalk.apple.com> for the code)
      3) Use Popup Menus in modal dialogs
      4) Use AppendDITL() to get a NewsWatcher-like preferences box
      5) Use styled text edit records from resources to display text
      6) Write a filter for a Modal Dialog using ModalFilterUPPs

 Some some of this code is stolen from my own program, others stolen from other
 people, but it's all here for you!

 If you have any comments about the code, any improvements/additions/bugs,
 please feel free to contact me at tclement@hmc.edu.

 I make no guarantees regarding the decency of this code.  Run it and use
 it at your own risk.

Version History:
    January 26, 1995        -       1.0 - First release

tclement@hmc.edu  Todd Clements - <http://www.cs.hmc.edu/people/tclement.html>
"If the federal government were around when the Creator put His hand on
this state, Indiana wouldn't be here...it'd still be waiting for an
environmental impact statement. - Ronald Reagan


#### BINHEX     dink-class-c.hqx   ****

Date: Tue, 2 Mar 93 08:08:11 -0800 
From: blob@apple.com (Brian Bechtel)
Subject: DinkClass 

[Downloaded from AppleLink--I'm not the author, Mark Gross is.  Contact him
via zsass.markg@applelink.apple.com.]

DinkClass is a small Think C5.0 (and MPW C++) application framework for
system 7 applications.  

DinkClass is now offered as shareware.  
If you use ANY of it in your own software, then you must pay a one time fee
to Applied Technical Software (ATS) of $45.  In return you will get
unlimited rights to distribute any COMPILED programs created using part of
DinkClass source code.  However; the distribution of any source code
derived from parts of the DinkClass software MUST BE DONE WITH APPLIED
TECHNICAL SOFTWARE'S CONSENT!!!! (So, give me a call.)   You also get, for
the $45, two free maintenance updates of the basic class library, of the
basic demo applications, of the documentation, any extra demo applications
I may have created (DComDemo a CTB demo, for instance), the MPW C++
supporting files (.make, .r, .c files renamed to .cp, etc.), and telephone
and EMail support.  Maintenance updates go out in December and July.

The DinkClass ShareWare distribution package includes:
o Think C 5.0 projects with well commented source code for 2 applications
and the Template project.
o Think C 5.0 source files for the base class library.
o Off-line documentation of the key features implemented in the class
library, all conforming to the Feature Oriented Documentation standard
developed. Features documented in this way include:  
All the applications, Scrolling Windows, Event parsing, File and I/O
handling, Clip board support, Menu Handling, and more.
o A readme file.
o A directory "Listings" file of what constitutes this ShareWare distribution.
o A shameless flier soliciting contract software development work for ATS.
o The executable form of the CTB demo application.
o This "Posting note"

Feel free to redistribute this shareware package of DinkClass as you wish, but
ALL OF THESE FILES MUST STAY TOGETHER UNALTERED IN ANY RE-TRANSMISSION OR
DISTRIBUTION OF THIS SHAREWARE PACKAGE!!!!!

p.s. it would be nice if someone could but this package in some of the
INTERNET repositories (like SUMEX)

Mark Gross 12/31/92

Applied Technical Software
19548 W. Cambridge Rd.  
Mundelein, IL  60060-1005       
Telephone:      708.949.0925

Software engineering services in OOD,  OOP, C++, C, MacApp, TCL, MPW,
ThinkC.  Initial project development intended for transfer to client with
continued technical support.  Turnkey, prototype, and consulting projects
accepted.

I know, its another shameless plug.

p.s. If you would like to use DinkClass in an educational setting contact
me for FREE transient licensing arrangements.

--Brian Bechtel    blob@apple.com    "My opinion, not Apple's"


#### TEXT       dir-scanning-sample-c.txt   ****

Date: Wed, 2 Sep 92 15:19:54 PDT
From: macmod@SUMEX-AIM.Stanford.EDU (Info-Mac Moderator)

orrow.stanford.edu!stanford.edu!ames!haven.umd.edu!darwin.sura.net!wup        ost!micro-heart-of-gold.mit.edu!bu.edu!Shiva.COM!world!aep 
From: aep@world.std.com (Andrew E Page) 
Newsgroups: comp.sys.mac.programmer 
Subject: Re: Directory Scan Revisited dirscan.c (C Code) 
Message-Id: <Btyt08.JLL@world.std.com> 
Date: 2 Sep 92 19:04:54 GMT 
References: <BtwK89.oI@world.std.com> 
Organization: The World Public Access UNIX, Brookline, MA 
Lines: 625 
Apparently-To: info-mac 
Resent-To: backmod
Resent-Date: Wed, 2 Sep 1992 15:19:53 PDT
Resent-From: Info-Mac Moderator <macmod@sumex-aim.Stanford.EDU>

Here is the directory scanning code.  Written under MPW 3.2.

--------CUT HERE------------------------------------------------CUT HERE------

#### BINHEX     directory-c.hqx   ****

From: kenlong@netcom.com (Ken Long)
Subject: directory_src.sit
Date: Tue, 21 Dec 1993 08:54:22 -0800 (PST)

Dear MacGifters:

A netcom server error fouled up my first attempt to send this.

-----------------------------------------------------------------------
Directory is o PD (for noncommercial use) Think C 5.0.4 project which 
puts up a window, shows progress data of scans of mounted volumes in a 
window for each, then displays full path trees for all files on the volumes.

Teaches about getting full paths, scanning volumes, scrolling text, 
writing data to a window, and much more.

-----------------------------------------------------------------------


#### BINHEX     directory-popup-101.hqx   ****

From: mwaren@mbox.vol.it (Marco Piovanelli)
Subject: DirectoryPopup 1.0.1; a code snippet

DirectoryPopup 1.0.1 is a C code snippet for Macintosh
programmers that shows how to implement a Finder-like
pop-up menu for folder navigation in window titles.
CodeWarrior 10 project files and a sample application
are included.

                                -- marco


#### BINHEX     dirent-h.hqx   ****

Date: Sun, 4 Jul 93 14:52:04 EDT 
From: ugtalbot@mcs.drexel.edu (George T. "14K F/D" Talbot)
Subject: dirent.sit.hqx 


This is source code for a Mac implementation of the UNIX "dirent.h" library.


#### BINHEX     display-graphics-102-c.hqx   ****

Date: 20 Mar 1995 14:29:13 U
From: "Samuel Herschbein" <sam@bioeng.washington.edu>
Subject: DisplayGraphicsKludge 1.0.2

     DisplayGraphicsKludge gives vanilla (ordinary) C programs access to the
Mac's graphics, without needing to know how to program the Mac's Graphic User
Interface (GUI).  
     DisplayGraphicsKludge is a C procedure that graphically displays any
contiguous area of your C program's memory (RAM image) as a 2 dimensional
uniformly distributed 256 level gray scale image.  The image data in memory is
interpreted as one byte per pixel, where 0 = black and 255 = white.  The image
is displayed in a dialog box.  The gray scale image can be printed or saved to
the disk as a TeachText/SimpleText PICT file.
     DisplayGraphicsKludge requires that your computer's leftmost monitor be
set to 256 or millions of colors/greys (black&white, 4, 16, & thousands will
not work OK).

     DisplayGraphicsKludge is free, courtesy of the Center for Bioengineering
at the University of Washington.

     Version 1.0.2 corrects some variables defined as ints (they should be
short or long to insure that all compilers make them the right size).

Sam


#### BINHEX     dragonsmith-111-cp.hqx   ****

From: paul.hoffman@umich.edu (Paul Hoffman)
Subject: Dragonsmith 1.1.1
Date: Sun, 16 Jan 1994 08:46:13 -0600



--========================_17225260==_
Content-Type: text/plain; charset="us-ascii"

Dragonsmith 1.1.1

Drag-and-drop application kit for THINK C 5.0 and 6.0.

Dragonsmith lets THINK C programmers easily create drag-and-drop
applications (or "dragons") for use with System 7.  It features an
object-oriented class "Dragon" which may be subclassed to provide
any batch-type action desired.  All source code is included.

Version 1.1.1 is a bug-fix and THINK C 6.0 compatibility release
only.  No new features have been added, and the documentation has
not been changed from version 1.1.

Some of the bug fixes since version 1.1 --
 + Processing is no longer sluggish when drag-and-dropping files
   to launch a dragon
 + Files on AppleShare volumes are now handled correctly
 + Launch in System 7.1 no longer results in a crash

Notable features of Dragonsmith --
 + Versatile disk- and folder-opening capability
 + Background processing
 + Extensive documentation (MSWord and text formats)
 + Resource-based Preferences class
 + Template files for quick Dragon subclassing

Three sample dragons with full source code are included.

Dragonsmith is freeware.

Paul Hoffman.
Internet: paul.hoffman@umich.edu
AFS: /afs/umich.edu/user/n/k/nkuitse
"Dragons do not enter into this story"



--========================_17225260==_
Content-Type: application/mac-binhex40; name="Dragonsmith_1.1.1.cpt"
Content-Disposition: attachment; filename="Dragonsmith_1.1.1.cpt"


#### BINHEX     dragonsmith-111-cw-updt.hqx   ****

Date: Sat, 22 Oct 1994 20:25:31 -0400
From: paul.hoffman@umich.edu (Paul Hoffman)
Subject: Dragonsmith 1.1.1 CodeWarrior update



--========================_13102812==_
Content-Type: text/plain; charset="us-ascii"

Dragonsmith CW Update updates Dragonsmith 1.1.1 for CodeWarrior C++.

The full Dragonsmith kit (available separately) lets programmers easily
create drag-and-drop applications for use in System 7 or greater.  This
archive contains project files for CodeWarrior 4.5 as well as replacements
for 8 of the source code files, incorporating changes needed for
compatibility with Apple's Universal Headers and CodeWarrior C++.  Users
of Symantec C++ may benefit from this upgrade as well, although use of
Dragonsmith 1.1.1 in Symantec C++ 6.0 or greater has not been tested and
is therefore not fully supported.

This update was produced by Francis H Schiffer, 3rd.  Support for the
CodeWarrior version of Dragonsmith will be provided (when possible) by the
original author of Dragonsmith 1.1.1, Paul Hoffman.

Dragonsmith is freeware, Copyright (c) 1992-1994 Paul M. Hoffman.  Programs
created using Dragonsmith may be distributed without restriction.

NOTE: "Drag-and-drop" here refers to the original Apple Event variety, not
to the more recent Drag and Drop for Macintosh (aka the Drag Manager).

      Paul Hoffman                |     Francis H Schiffer, 3rd
      paul.hoffman@umich.edu      |     skipschiffer@GEnie.geis.com
      dragonsmith@umich.edu       |

   - - - - - - - Dragons do not enter into this message - - - - - - -



--========================_13102812==_
Content-Type: application/mac-binhex40; name="Dragonsmith_CW_update.cpt"
Content-Disposition: attachment; filename="Dragonsmith_CW_update.cpt"


#### BINHEX     driver-22-c.hqx   ****

From: Pete Resnick <resnick@cogsci.uiuc.edu>
Subject: Driver 2.2
Date: Sun, 24 Oct 93 16:20:52 CDT

Attached is version 2.2 of Pete Resnick's device driver code. This
code is especially useful for device drivers written using THINK C's
device driver facility, though it is useful for other development
environments as well since it describes in detail how to install
device drivers correctly into the Device Manager unit table.

Please feel free to use it and to distribute it in it's original form.
All that I ask is that you credit me if you use it in a released piece
of code.

pr
--
Pete Resnick    	(...so what is a mojo, and why would one be rising?)
Graduate assistant - Philosophy Department, Gregory Hall, UIUC
System manager - Cognitive Science Group, Beckman Institute, UIUC
Internet: resnick@cogsci.uiuc.edu


#### BINHEX     drop-shell-20-c.hqx   ****

From: somogyi@ziff.com (Stephan Somogyi)
Subject: DropShell 2.0
Date: Sat, 2 Jul 1994 15:20:45 -0700



--========================_13717509==_
Content-Type: text/plain; charset="us-ascii"

DropShell 2.0 - July 1st 1994

by Leonard Rosenthol, Marshall Clow, and Stephan Somogyi

DropShell is a collection of C source files that allow you to easily build
your own System 7-style drop-box applications.


Basic Features

DropShell consists of four source files and five header files that are
designed to let you quickly add your own application's functionality
without having to change the DS sources themselves much.

DropShell implements support for dragging files and folder onto the
application's icon via AppleEvents - it doesn't cheat and use the System 6
compatibility provided by System 7. DropShell is also a fully factored
application - it performs its work by sending AppleEvents to itself. This
also allows an application built on DropShell to be "recorded" by an
OSA-compatible scripting system.

DropShell handles a simple user interface including a splash screen,  a
"Select File..." option and complete balloon help for all menus and
dialogs.



--========================_13717509==_
Content-Type: application/mac-binhex40; name="DropShell_2.0_sources.sit"
Content-Disposition: attachment; filename="DropShell_2.0_sources.sit"


#### BINHEX     drop-unix-12.hqx   ****

From: (Ryan Davis) zss@tssnet1.tss.net
Subject: DropUNIX 1.2

DropUNIX 1.2
============
By: Ryan Davis, Zen Spider Software

http://tssnet1.tss.net/zss/
mailto://zss@tssnet1.tss.net

Why did I write DropUNIX?
-------------------------
Basically I was tired of writing support for some sort of user interface
for UNIX ports. What it really comes down to is I dislike both Symantec's
and MetroWerk's cconsole call. I thought, "Mac users don't DO paths... It
is even discouraged by Apple...". So I wrote this little library allowing
people to convert their ugly console app with no real interface to at LEAST
be drag & drop'able.

How do I use it?
----------------
Well, this is the nice part. So all you have to do is start a new
application project (or duplicate the examples project) add all your unix
files, the DropUNIX library, and the DropUNIX resources file. Don't forget
to make the creator '�UNX' (delta = option-d) or change the BNDL
information in the resources. Finally, include "Main.h" in the same file
that has your original main(...). It has a #define to convert your
main(...) to Main(...), so linkage is automatic once you compile...
Essentially, you never change your code!

Why should I use it?
--------------------
Simplicity for the first part. You don't have to do much of anything to get
it up. Second, to maintain Apple's Human Interface Guidelines. I hate, You
hate, we all hate icky GUI's! Last, but not least Productivity. By using
DropUNIX you have increased your productivity by giving the port a new
interface for free, and you have increased your users productivity by
giving them an interface they can use intuitively...

Changes
=======

Version 1.2 has been cleaned up quite a bit. It has been updated for CW8,
and includes a CW8 project file. It has been enhanced to compile clean
under Apple's Universal Headers 2.0+, and everything now compiles under C
or C++, with or without precompiled headers. In other words, if I can
compile it, you can compile it!


#### BINHEX     e-z-progress-bar-10-c.hqx   ****

From "MaT101@aol.com (Michael Terry)" Wed Mar 15 20:42:39 1995
Date: Wed, 15 Mar 1995 23:42:48 -0500
From: MaT101@aol.com (Michael Terry)
Subject: E-Z Progress Bar 1.0a.sit.hqx



--========================_6835356==_
Content-Type: text/plain; charset="us-ascii"





--========================_6835356==_
Content-Type: multipart/header-set; boundary="========================_6835356==_D"



--========================_6835356==_D
Content-Transfer-Encoding: base64
Content-Type: application/applefile; name="%E-Z_Progress_Bar_1.0a.sit.hqx"
Content-Disposition: attachment; filename="%E-Z_Progress_Bar_1.0a.sit.hqx"

AAUWBwACAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAADAAAAMgAAAB0AAAAJAAAATwAAACBF
LVogUHJvZ3Jlc3MgQmFyIDEuMGEuc2l0LmhxeFRFWFRCTkhRAQABPgAAAAAAAAAAAAAA
AAAAAAAAAAAA


--========================_6835356==_D
Content-Type: text/plain; name="E-Z_Progress_Bar_1.0a.sit.hqx"; charset="us-ascii"
Content-Disposition: attachment; filename="E-Z_Progress_Bar_1.0a.sit.hqx"

Enclosed is a submission for the source code folder of Mac development

(This archive can be included in CD ROMs)



E-Z Progress Bar is a progress bar class which creates and maintains a progress

bar window.  All you have to do is show it and update its value.  It is also

customizable, allowing for flexibility in appearance and use.  A demo app shows

how to use it.  Also included is ChiselClass, a class which will create subtle

3-D chiseled effects on rectangular objects.  All code is freeware.






#### BINHEX     earth-plot-301-c.hqx   ****

From: kenlong@netcom.com (Ken Long)
Subject: earthplot-301-c
Date: Wed, 19 Jan 1994 07:30:20 -0800 (PST)

Hello, folks!

Here's an unsolicited file.

-Ken-

------------------------Tear along dotted line----------------------------
Description:

This is an update of the EarthPlot 3.0 C source.  The copy I downloaded, 
years ago, from AOL, did not run.  There was an undefined "FlushEvents" 
in the tskel.lib addition, which there was no source for.
So I had to get TransSkel, get it to run on Think C 5.0.4, use it in 
EarthPlot, then get EarthPlot to run in the same env.

Piece of cake!  Here it is!

--------------------------Cut Here------------------------------------


#### BINHEX     easy-view-src-260.hqx   ****

From: ace@tidbits.com
Subject: Easy View 2.6 source code


A number of people have asked about the status of Easy View, Akif Eyler's
popular text viewing utility. Akif hasn't worked on it in years, so I asked
him about putting it in the public domain for any programmer to update. He
agreed, and sent the enclosed archive along with the note below.

Although I don't have the time to do this personally, I'd encourage
interested programmers to communicate with one another and perhaps share
code to create a single version that would cut down on the kind of
confusion we had with the various MacPPP variants.

cheers... -Adam

---
After moving to Marmara University in Istanbul, I haven't had any time to
support or develop Easy View any longer. Upon a suggestion from Adam Engst,
I decided to publish the source code, open to further modifications. Since
independent future developments are possible, I suggest adding a single
letter before version number, such as "Easy View A2.70" or "Easy View
P2.85", the letter indicating the author.


Easy View was written in Object Pascal and it requires MacApp 2.x. Easy
View extensions can be written in any language.




#### BINHEX     eat-au-p.hqx   ****

Date: Thu, 2 Dec 1993 16:07:50 +0800
From: Quinn <quinn@cs.uwa.edu.au>
Subject: Movie Import Component Source Code



--========================_17153170==_
Content-Type: text/plain; charset="us-ascii"

Greetings

EatAU is a QuickTime component that converts Suns audio (.au) files into
QuickTime movies.  It comes with full source code and is a simple example
of how to write a component in Pascal.

Share and Enjoy.



--========================_17153170==_
Content-Type: application/mac-binhex40; name="EatAU.cpt"


#### BINHEX     eclectic-cdef-collection.hqx   ****

From: case@tvol.it
Subject: eclectic CDEF Collection 1.0


The eclectic CDEF Collection is a set of 2 freeware CDEFs (control
definition functions) written in Pascal, the Celsius CDEF and the Gauss
CDEF.

CDEF stands for "control definition function": it is a way to define the
appearance and the behavior of custom controls. Custom controls may be
dials, gauges, sliders, and so on. CDEFs may be used by almost every
Macintosh software and by practically every development environment and
programming language.

The Celsius CDEF implements a thermometer- or barber pole-style progress
bar similar to that used by the Finder in the Copy or Find windows.
Additional options allows you to honor custom colors stored in 'cctb'
resources, to draw the bar always in the active look ignoring
deactivations, and finally to display the bar with a 3D-like "inset"
effect, as shown in the develop 15 article "Working in the Third
Dimension".

The Gauss CDEF draws application-specified blocks of text. It can draw
simply the control's title, append a numeric value to it or draw a block
of text up to 32K set up by the calling application. Optionally the
Gauss CDEF can also honor 'cctb' resources, draw the text with the
owning windows' text font, size and style, and draw a 3D-like effect
(inset or raised).

The eclectic CDEF Collection consists of

- two CDEFs: the Celsius CDEF and the Gauss CDEF - two 'stubs' to allow
source-level debugging of the CDEFs: StubCDEF and JumpCDEF - some
utility routines - a demonstration application for the CDEFs

The eclectic CDEF Collection is written by:

Sebastiano Pilla Viale dei Mille 20 31100 Treviso (Italy)
<mailto:case@tvol.it>



#### BINHEX     enum-types-creators-c.hqx   ****

From: kenlong@netcom.com (Ken Long)
Subject: enumtypes-creators-c
Date: Mon, 17 Jan 1994 17:29:26 -0800 (PST)

Dear Mac Gifters:

You don't seem to have posted my stuff at U. Michigan, lately.  I've seen 
them on Standord, though.  Still short on disk space?

-Ken-
--------------------------------------------------------------------------
Description:

Two Think C 5.0.4 source projects.

One scans the resident drive for all file types, creates a new text file, 
and writes those types in a sorted list, with the quantity of those types 
adjacent to them.

The other does exactly the same thing with file creators.

---------------------------Cut Here----------------------------------------


#### BINHEX     example-scripting-additions-c.hqx   ****

Date: Mon, 4 Oct 1993 12:56:06 -0500
From: jonpugh@netcom.com (Jon Pugh)
Subject: [*] Scripting Addition Samples



--========================_14520392==_
Content-Type: text/plain; charset="us-ascii"

Here are eight sample AppleScript Scripting Additions with C source code
done by Donald Olson of Apple Computer and presented in his WWDC talk this
year.  I was asked to make these available on the Internet and now I have. 
;)

These demonstrate a number of useful techniques for presenting information
including the use of records and wildcard handlers in addition to the
minimal boring stuff.

For all who care, Donald said it was OK to post them since they are also on
Applelink.

Jon



--========================_14520392==_
Content-Type: application/mac-binhex40; name="OSAX_Samples.sit"


#### BINHEX     fantasm-creation-demo.hqx   ****

Date: Tue, 21 Feb 1995 07:57:21 +0000
From: pcarter@lincoln.gpsemi.com (Paul Andrew Carter)
Subject: Fantasm Creation demo.sit:

Here is a small (but impressive) Demo of what can be produced with Fantasm
(The Complete Mac Programming System for Lightsoft, Grantham, Lincs.
England).

******************************************************
Paul Carter                 pcarter@lincoln.gpsemi.com
GEC Plessey Semiconductors  Tel+44 522 502360
Doddington Rd,              Fax+44 522 502466
Lincoln,LN6 3LF,UK          Gnet: (access)595 2360
******************************************************


#### BINHEX     fantasm-demo-project.hqx   ****

Date: Tue, 14 Feb 1995 23:29:37 -0200
From: Lightsoft <lightsoft@zedworld.demon.co.uk>
Subject: Demo written with Fantasm 

Please include the update of the Fantasm on your server. Summary follows...

This graphical demo has been written using Fantasm. It requires 256 colors,
and 640 by 480 display.

Rob Probin for lightsoft


#### TEXT       fft-asm.txt   ****

From: Tom Barrett <barrett@pacific.mps.ohio-state.edu>
Date: Tue, 26 Jul 1994 10:06:11 -0400

This is an update to info-mac/sci/fft-in-asm-src.txt

This file contains three routines:
* void tb_68k_four1_extended(long double *data, long nn, long isign);
* void tb_68k_four1_single(float *data, long nn, long isign);
* void tb_68k_fourn_single(float *data, long *nn, long ndim, long isign)

------------------------------ CUT HERE ------------------------------

/* This code is a hand-assembled version of the fft routine from Numerical
Recipes.  See the book for information about how it works.  All variable
names in comments refer to those in the book.

To use this routine:
* You must have a math coprocessor.
* Use Think C (users of other compilers may be able to adapt it).


#### BINHEX     ffts-for-risc-2-c.hqx   ****

From: green_jt@VSDEC.Npt.NUWC.Navy.Mil
Subject: FFTs-for-RISC-2-c


Enclosed is a stuffit archive of version 2.0 of my 'C' source code fft 
library.

Very-Fast Fourier Transform routines.  Routines are provided for real
and complex forward and inverse 1d and 2d fourier transforms and 3d
complex forward and inverse ffts. I coded these to optimize execution
speed on Risc processors like the PowerPC. All fft sizes must still be a
power of two. Test programs that use the Numerical Recipes in C routines
are provided. Also included are some simple applications with source
code which time the FFTs. See the enclosed read me file for more
information.

Revision version 2.0:
		Rewrote code to rely more on compiler optimization (and be a bit less 
ugly.)
		Removed restrictions on too small or too large ffts.
		Provided a library extension that manages memory for cosine and bit
reversed counter tables.
		Added 2d and 3d complex and 2d real ffts.
		Speeded routines for data too large to fit in primary cache.
		Changed most testing from Matlab to Numerical Recipes based (because 
you can buy it for less.)
		Changed call parameters (watch out.)

Revision version 1.21:
       line 126 of rfftTest.c corrected.
Revisions version 1.2:
       I now store the Nyquest point of the real transform where the 0 
for the DC term's
imaginary part used to be.  !! WATCH OUT FOR THIS IF YOU USE rfft !!
       Added the real inverse Fourier transform.

Revisions version 1.1:
       Re-arranged to put fft routines in a shared library and changed 
source file name to fftlib.c.
       Removed some ugly optimizations that are no longer needed for 
CodeWarrier.

This code is public domain, do anything you want to with it.

- John Green


#### BINHEX     file-ic-helper.hqx   ****

From: (Jordan Zimmerman) jordanz@altura.com
Subject: Internet Config "file:" Helper

"file:" Helper for Internet Config
By Jordan Zimmerman
(c)1996
Hereby released into the Public Domain
___________________________________________________________________

10/8/96

REQUIREMENTS:
Internet Config 1.1 and knowledge of programming Internet Config.

DESCRIPTION:
This code implements a function similar to ICLaunchURL():

OSErr ICLaunchFile(ICInstance ic_instance, const FSSpec* file_spec_ptr);

This sends the given file to the user specified Web browser as a "file:" 
URL.

LICENSE:
This code is released into the public domain and can be used, modified, 
etc. as desired. However, the author would appreciate a mention in the 
about box or documentation.


================================================
Jordan Zimmerman
Altura Software, Inc.
home page: http://www.altura.com/jordanz

Harry Browne for President!    
http://www.harrybrowne96.org   1 (800) 682 1776
Stop the Browne Out! Let Harry Browne debate!     http://www.twr.com/stbo


#### BINHEX     final-chance-111-c.hqx   ****

From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Final Chance 1.1.1 (source code)
Date: Mon, 17 Jan 1994 22:17:12 -0500 (EST)

Final Chance 1.1.1 is a combination of fluff and utility, giving you a random
quote on shutdown (one of 150) and a chance to stop the shutdown process and
go back to the Finder.  If you let the dialog box sit for 60 seconds, it will
automagically shut down.  This archive contains complete THINK C source code
and project files.  The INIT alone is also available; check ftp sites or
e-mail f8dy@netaxs.com.  Finger f8dy@netaxs.com for complete program list.
Copyright (C) 1993-4, Mark Pilgrim.  Please read enclosed file "GNU General
Public License" for licensing details.


#### BINHEX     finder-marquee-c.hqx   ****

Date: Mon, 10 Jul 1995 17:25:18 -0800
From: jordanz@altura.com (Jordan Zimmerman)
Subject: Finder Marquee

Mac development source code that implements a "rubber band" marquee select
rect  with very smooth drawing in a manner similar to the Mac Finder.


#### BINHEX     finder-progress-bar-20-c.hqx   ****

From larson@BASE.CS.UCLA.EDU Tue Mar 14 10:48:39 1995
Date: Tue, 14 Mar 1995 10:48:31 -0800 (PST)
From: Chris Larson <larson@BASE.CS.UCLA.EDU>
Subject: FinderProgressBar 2.0 : A CDEF Progress Bar.


Enclosed is version 2.0 of FinderProgressBar, my CDEF implementation of 
progress bars which mimic those used by Finder.

New features include support for custom control colors, support for the 
"barber-pole" animation of progress bars, and native execution on both 
680x0 and PowerPC architectures.

Complete source code (Metrowerks CodeWarror v5.5) is included.

Info-Mac Moderators:
    This file replaces info-mac/dev/src/finder-progress-bar-11-c.hqx.
    Feel free to include this on any CD you choose.

--Chris
_______________________________________________________________________________
Chris Larson -- Amateur Macintosh Geek, CoBase Research Assistant
Internet: larson@kingston.cs.ucla.edu                  (Insert Disclaimer here)


#### BINHEX     finger-server-c.hqx   ****

Date: Wed, 20 Oct 1993 10:00:21 -0400 (EDT)
From: Aaron Wohl <aw0g+@andrew.cmu.edu>
Subject: finger server for system 7

Finger server for system 7
 by Aaron Wohl N3LIW / Public Domain / mail n3liw+@cmu.edu
Home ftp site akutaktak.andrew.cmu.edu [128.2.35.1] /aw0g/finger*

Shows list of running processes and list of open files.
>From a unix server we finger a mac running a mail gateway
to see if it is still alive and what it is running.

Think C sources included


#### BINHEX     fixit-c.hqx   ****

From: a mouse in the castle, tinyjohn@sasknet.sk.ca
Subject: Fixit

Fixit is an MPW tool that translates easily readable infix
mathematical expressions into difficult to read and edit fixed
point math function calling sequences that are suitable for
use as expressions in C programs.

It also serves as a fixed point expression evaluator.

Full C, yacc, and lex source code included.  Also, C source code
for the following fixed point routines can be found herein:

FixSqrt, FixExp, FixSquare, FixCos,

---------------------------------------------------------------------
-     John Montbriand             P.O. Box. 1133                    -
-     tinyjohn@sasknet.sk.ca      Saskatoon Saskatchewan Canada     -
-     (306) 955-5189              S7K 3N2                           -
---------------------------------------------------------------------


#### BINHEX     fixit.hqx   ****

From: a mouse in the castle, tinyjohn@sasknet.sk.ca
Subject: fixit

Fixit is an MPW tool that translates easily readable infix
mathematical expressions into difficult to read and edit fixed
point math function calling sequences that are suitable for
use as expressions in C programs.

It also serves as a fixed point expression evaluator.

Full C, yacc, and lex source code included.  Also, C source code
for the following fixed point routines can be found herein:

FixSqrt, FixExp, FixSquare, FixCos, FixSin, FixTan

These libraries are for free.

Copyright (C) 1996 by John Montbriand.  All Rights Reserved.


#### BINHEX     fixsrc-13-src-c.hqx   ****

From: (Adam Miller) miller@minerva.cis.yale.edu
Subject: Fixation 1.3 (Source Code)

Source code of Fixation, a graphical client for the Free Internet Chess
Server.  Includes TCP stuff and much more.

adum


#### BINHEX     flame-09.hqx   ****

From: garage@wave.net (Ellrott)
Subject: Flame - 0.9

Flame - 0.9
by Kyle Ellrott
garage@wave.net
-----
This is a very simple set of subprograms that will allow you to create flame
effects.  What more can I say, it lets you burn things.
---
Plans for the future:

 - Work in other other color types then just 8-bit indexed
 - A sin wave variation on the flame path
 - Some assembly to speed up key parts
 - Just make it faster
 - Burn down a building
---
Legal junk
I coded this as a practice, and also because I like to burn things.
All I really want is a nice mention in any program that you use this
in, and maybe a nice e-mail, that I can burn.

Kyle Ellrott
garage@wave.net


#### BINHEX     flight-simulator-20-c.hqx   ****

Date: Fri, 11 Dec 92 10:32:00 PST 
From: chris@carnival.lbl.gov (Chris Moll)
Subject: flight-simulator_v2.hqx 


	This is the source code for a program to
demonstrate how to do 3D perspective drawing and
clipping.  It's written as a sort of crude flight
simulator - you "fly" through a rather simple world.
It also shows how to do simple animation.	
	All math is fixed-point to make the speed tolerable
on feebler Macs.  With an FPU the speed would be roughly
the same using floating point.
	The package contains the source code, a ThinkC
vers.5.0.3 project, and an executable version compiled
for any Mac.  The changes from the old version are minor,
mostly I fixed things that would prevent it from compiling.

	Comments etc. to
		Chris Moll
		chris@carnival.lbl.gov

archive as /info-mac/source/c/flight-simulator_v2.hqx
(replace /info-mac/source/c/flight-simulator.hqx)


#### BINHEX     flight-thru-clouds-cpp.hqx   ****

Date: Sat, 9 Jul 94 12:42:15 -0500
From: oleg@ponder.csci.unt.edu (Kiselyov Oleg)
Subject: flight_thru_clouds - simple virtual reality w/ source and expl


What:	"virtual" flying through the clouds
Hot points:
	- simple virtual reality "thing"
	- with the source
	- *very* detailed explanation as to how to generate clouds and
	  render maps in 3D.
	- includes the source for a small class library to handle color
	  Mac windows and draw images in off-screen GrafWorlds
Contents:
	Readme		- this file
	Venus		- Application itself
	Venus.pi  	- project and resource files to build it
	Venus.pi.rsrc	- 'clut' resource
	FractalMap.cc	- generate a fractal map (clouds)
	project_3D.cc	- display a 3D moving projection of the map of clouds
	display.cc	- display an image in a Mac window
	window.h	\ my own private *very* simple MacApp: classlib for
	SimpleWindow.cc / handling color Mac windows and offscreen GrafWorlds
	The source code contains (too) many comments to show what
	a particular piece of code does, as well as some tricks involved
Language: Symantec C++ 7.0.3 (previous versions might work, too)
System: System 7.x; tested on IIci, Quadras and Centres.
Note: the source code uses a "standard" environment, see myenv-notify.cpt,
      which can be found at various archive sites under the name
      'myenv-notify'. The source also uses graylib class library to
      handle images, recently posted on comp.source.misc. However,
      the library is not *very* used;  one can easily get around without
      it with only small modification of the code.
Comments-to: oleg@ponder.csci.unt.edu, oleg@unt.edu
Many-Thanks-To: Tim Clarke, tjc1005@hermes.cam.ac.uk (for inspiration)

Explanation:

	Just fire it up, sit back and enjoy. Hope you'll get some
feeling that you're hovering over or flying through the clouds. If you
quit the program and start it over again, you'll get different clouds
(which might be much better and more interesting to fly around).

	If you want to take on a more active role, hold the mouse
button down and move the mouse. Then your flight is in your own hand
(which holds the mouse). You have to keep the mouse button down all
the time you want to control the situation: when mouse button is up,
the system flies by itself. You can also use the keyboard: arrows
left/right/up/down move you around, PgUp/PgDn changes your altitude
(or height of the horizon if pressed with "Option"); all other keys
quietly kill the program (you can also quit by clicking the close box
of the window).

	This program is inspired by "MARS.EXE" and its description
posted in rec.games.programmer. There, the author of Mars, Tim Clarke,
explained its guts, though he didn't give detailed equations and there
were a few typos in his post. Source file 'project_3D.cc' in the
present submission contains the fullest description (I could come up
with) of the 3D rendering technique: with background, equations,
pseudocode and the actual code (and tricks with the fixed-point
arithmetics: hey, no floating-point numbers are in here).

	If you need further information or details, mail me.

Enclosers:	Venus.cpt.hqx

------------------------------------------------------------------------

#### BINHEX     floating-windows-pas.hqx   ****

From: pottier@clipper.ens.fr (Francois Pottier)
Subject: no subject (file transmission) 
Date: Sat, 19 Jun 93 12:53:34 MET DST 

Hi archiver!
This is a small set of THINK Pascal 4 routines to handle floating windows
in a Pascal program. 
A few days back I looked on several ftp sites for such code snippets. All I
found was a C library by Patrick Doane. I translated it to THINK Pascal
and I also made it much shorter and clearer (IMHO). Since there is no
Pascal source code out there, I thought I'd submit to the archives.

This code is public domain. Whoever finds it useful may use it.
Enjoy
							Francois Pottier
							pottier@clipper.ens.fr

To the archiver : this file should be named something like
'Pascal-FloatWin.hqx', I suppose. Thanks


#### BINHEX     fmenus-example-pas.hqx   ****

Date: Tue, 24 Nov 1992 13:45:06 +0800 
From: Peter N Lewis <peter@ncrpda.curtin.edu.au>
Subject: source/pascal/FMenusExample.hqx 


_______________________________________________________________________
Peter N Lewis <peter@ncrpda.curtin.edu.au>           Ph: +61 9 368 2055
This is some example code to demonstrate the use of MyFMenus.unit.  
This unit implements FMenus in a similar way to the Finder, which 
allows decoupling of the menu position from the code that executes 
the menu's command.  The example program is not a full shell, it 
simply implements the Menus, and each menu selection prints a 
message to the console window.  It should be fairly easy to understand.  
I've used this code in several programs, and it works quite nicely, 
avoiding the need to keep changing constants in the code every time 
you add a menu item.

TopSoft is working on an advanced version of this (written in C
for some strange reason), if you are interested in that, or other
things that TopSoft is doing, check out the ftp site at
syrinx.kgs.ukans.edu in the /topsoft directory, or ask to join
the mailing TS mailing list at ts-request@syrinx.kgs.ukans.edu
(hopefully you'll join inbetween the flame wars and not in the 
middle of one :-)

[Wouldn't it be nice if this came out comp.sources.mac?  
Too much to ask I guess]

Hope its useful to someone,
   Peter. <peter@ncrpdao.curtin.edu.au>

FMenus Example v1.0.0 Copyright 1992 Peter N Lewis 


#### BINHEX     friends-of-nim-c.hqx   ****

From: f8dy@netaxs.com
Subject: Friends of Nim 1.0 source code
Date: Sun, 9 Jul 1995 16:47:34 -0400 (EDT)

Friends of Nim is a collection of games based on John Conway's game of Nim.
Included: Nim, Prime Nim, Northcroft's Nim, Turn-a-block, My daddy makes
more money than yours, Corner the Queen, Corner the Superqueen, Corner the
King, and Corner the Superking.  Play against a friend or pit your skills
against the computer.  Play regular or misere style games.  Requires system
7.0 or later.  Copyright (c) 1995, Mark Pilgrim; please read enclosed file
"GNU General Public License" for licensing details.


#### BINHEX     frontier-scripts.hqx   ****

Date: Wed, 27 May 92 22:28:21 EST 
From: dks@MIT.EDU (Dhanesh K. Samarasan)
Subject: [*] Some "Frontier" Scripts & Information 


With regard to:

      > Date: Wed, 27 May 1992 11:02:56 -0600
      > From: igorl@uiuc.edu (Igor Livshits)
      > Subject: Frontier scripts
      > 
      > Could someone please download the assorted Frontier scripts
      > from AppleLink to the info-mac archive?

I have attached a number of basic scripts which I am sure it is OK
to post.  They are in DiskDoubler's ".sea" format (binhexed).  Please
archive the submission as:

        "Frontier_Scripts.sea.hqx"

The scripts may be buggy -- in fact some of them definitely are -- and
I do not endorse them in any way.  Caveat downloader.

There may be other scripts on AppleLink that I didn't see.  If you were
talking about something else, I apologize.  If you are looking for
something in particular, let me know.

      > Preferably, someone who won't have to pay the unreasonable
      > download/connect charges :-)

Oh, I pay them all right, but consider it my good deed for the day.

Note that there is a LISTSERV list -- and an FTP site -- dedicated to
Frontier.  Lots of stuff is available there.  The list and the site
are managed by Andy J. Williams (Andy_J._Williams@dartmouth.edu; see 
below for details), who can probably answer any questions you may have.


Cheers,
Dhanesh <dks@mit.edu>

........................................................................

Frontier Listserv Available!

Userland's Fontier is the first System level scripting for the
Macintosh.  With it, users can create scripts to control any number
of Apple Events aware applications (and in conjunction with QuicKeys,
non-Apple Events applications as well).

We have created a LISTSERV mailing exchange to allow people to share
Frontier knowledge with each other. Users are encouraged to post tips,
techniques, questions, scripts or script pieces, and anything else they
think relevant. Accompanying this list will be an anonymous ftp site
where people can place/get scripts, or related pd/shareware software.

If you would like to subscribe to this list send mail to
"listserv@dartmouth.edu" with

SUB FRONTIER <your name>

in the body of the message (NOT the subject!).

If you are new to Listserv or need additional help, send mail to
"listserv@dartmouth.edu" with

HELP

in the body of the message (again, NOT the subject.)

If you have any questions about the list or its uses, feel free to 
contact
me (via eMail only please!) If you have any questions about Userland
Frontier, feel free to contact me (but calling Userland itself might 
also
be a good idea).

-- 
Andy J. Williams, Manager, Computer Resource Center
Dartmouth College, 603 646-3989

........................................................................


#### BINHEX     fudd-10-c.hqx   ****

From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Fudd 1.0 (source code) (repost)
Date: Mon, 7 Feb 1994 23:13:56 -0500 (EST)

(This is a repost of the source archive I posted recently.  The last archive
was missing a few files; this should have everything.)

Fudd is a small utility to convert text files to Elmer Fudd talk, like the
character of the same name in the U.S. cartoon "Bugs Bunny."  Supports drag
and drop of any number of text files of any length.  This archive contains
complete THINK C source code, project files, and resource files.  Application
also available; check ftp sites or e-mail f8dy@netaxs.com.  Finger 
f8dy@netaxs.com for complete program list.  Copyright (C) 1994, Mark Pilgrim.
Please read enclosed file "GNU General Public License" for licensing details.


#### BINHEX     game-master-isolation-pas.hqx   ****

From: gurhs@uniwa.uwa.edu.au (Rhys Hollow)
Subject: source/pascal/Isolation-rulebook.hqx 
Date: Wed, 13 May 92 21:49:08 WST 

The Moderators,

Here is the source to the GameMaster rulebook Isolation.  It assumes the
user has the GameMaster developer's kit.  

It is in Think Pascal 4.0

Rhys.
--
Rhys Hollow (gurhs@uniwa.uwa.oz.au) "ee'er by gum he's a bad'un!" -DangerMouse.


#### BINHEX     gamma-table-11-p.hqx   ****

Date: Wed, 21 Jul 1993 10:16:09 -0800 
From: mxmora@unix.sri.com (Matthew Xavier Mora)
Subject: Gamma Util Pascal Library 

I converted Matt Slot's Gamma Library so that it can be used by Pascal 
programmers like me.

Enclosed is Gamma util Pascal Library. This lets you do screen dimming
on monitors capable of doing dimming.


Matt

__________________________________________________________________
Matthew Xavier Mora                         The keeper of the UMPG
SRI International                             Matt_Mora@QM.sri.com
[Sent using Eudora 1.3]                        mxmora@unix.sri.com
__________________________________________________________________


#### BINHEX     gc-frontier-snippets-10-fr.hqx   ****

Date: Sun, 13 Nov 1994 17:13:07 +0100
From: "Gary T. Czychi" <CZYCHI@sgcl1.unisg.ch>
Subject: GC Frontier Snippets 1.0



  GC Frontier Snippets 1.0
  ************************
  Important stuff, please read...


  Hi,

this is a collection of Frontier 3.0 scripts, which enable Userland's
Frontier to do some things which are not (or poorly) implemented in the
standard version.

These are more than 50 scripts and variables which noone should be
without. Like getting the monitor size and settings, turn file sharing
on/off and get its state, position Finder windows, set Finder flags, get
sizes of Data and Resource Forks, some Ressource magic and lots of other
stuff, to much to mentiuon here. Just try it out!

  This is how to install:

* Double click on the file "root.snippets" and install it into your
database.

* in "system.misc.paths" add another address: "root.snippets". That way
you can just type the snippets scripts without supplying the whole path
to the procedure when you call it.

* Double click the "system.extensions" file and import it under a
different name, like "root.foo" or something. This way you can take a
look at the XCMDs I added and copy those externals to your own externals
folder. Although this is not necessary, I would do it this way. However,
if  you want to, you can replace your existing "system.extensions"
without taking a look at my extensions.

  Legal stuff:

All of these scripts work fine for me (on different machines). However
there might still be some bugs somewhere. Therefore use it at your own
risk. Some Externals are from the net, some are from myself. Whenever
poosible I have included the related documentation of the external in a
WP document. I hope that I didn't violate a copyright or shareware
regulation, but I don't think so. If so, please contact me. Userland has
nothing to do with this, and I have nothing to do with Userland, except
for being a satisfied customer. I hereby put these scripts into "Public
Domain" or "PostcardWare", whatever you like most. Drop me a line with a
beautiful picture and you make me happy -- it's so easy!

If someone from Userland reads this, I would like to make a wish: Please
remove the bug from setting the size and position of the Frontier.root
window. Thanks so much. Your Tech Support is great!

Have a good time and  -- Happy Scripting!

Gary


Gary Czychi
Tiefe 966
CH-9105 Schoenengrund
Switzerland
czychi@sgcl1.unisg.ch



#### BINHEX     get-file-icon-11-c.hqx   ****

Date: Sat, 18 Mar 1995 19:43:52 -0800 (PST)
From: Jeff Beeghly <jbeeghly@u.washington.edu>
Subject: GetFileIcon1.1

here is GFI v1.1.  It includes several enhancements over v1.0 
(GetFileIcon.sit.hqx).  Please remove GetFileIcon.sit.hqx and add 
GetFileIcon1.1.sit.hqx to the umich & info FTP sites

GetFileIcon is a code snippet designed to demonstrait how to get a file's 
icon and display it.


#### BINHEX     ghost-10-c.hqx   ****

From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Ghost 1.0 (source code)
Date: Thu, 16 Dec 1993 04:10:10 -0500 (EST)

Ghost is a classic word-building game for two or more players.  Players take
turns each adding a letter to build a word, and whoever finishes the word
loses the round.  Lose five rounds, and you become a "ghost" and are out of
the game!  Up to five human players can compete against up to five computer
players at a variety of skill levels.

Ghost is free and is distributed under the GNU General Public License; this
archive contains complete THINK C source code for the game, as well as complete
source code for an external application used to set up the game's self-
integrity checker. If you do not have FTP access, e-mail the author requesting
a copy of the game, the source code, or a list of other programs by the same
author.  The address is f8dy@netaxs.com.  Bug reports, comments, and
suggestions may be sent to the same address.

This archive contains both THINK C 5 and THINK C 6 project files.  Use
whichever one you wish and throw away the other.

The code demonstrates the basics of event handling, menus, hierarchical menus,
prefs file maintenance, dialogs, alerts, windows, off-screen bitmaps,
synchronous and asynchronous sounds, machine-independent timing loops, file
maintenance, Gestalt environment checking, apple events, and the not-quite-
yet-famous "cough to continue" modal dialog filter proc.  None of this is very
well commented, but feel free to direct any questions to f8dy@netaxs.com.

Ghost 1.0 is copyright 1993, Mark Pilgrim, MerriMac Software Group.


#### BINHEX     ghost-mouse-11-c.hqx   ****

From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Ghost Mouse 1.1 (source code) 
Date: Sat, 13 Nov 1993 23:35:30 -0500 (EST) 

Ghost Mouse is a fun little INIT which will cause your mouse to disappear
if you stop moving it.  Due to numerous requests from users of version 1.0,
the mouse can stay stationery for about 2 seconds before it disappears.
This INIT is free and is distributed under the GNU General Public License;
this archive contains complete THINK C 6.0.1 source code and project files
for the INIT.  If you do not have FTP access, e-mail the author for a copy of
the INIT, the source code, or a list of other programs by the same author.
The address is f8dy@netaxs.com.

This code demonstrates the basics of writing and installing a VBL. This code
should work under any system, with any monitor, on all Macintoshes.  Please
report any bugs/comments/suggestions to f8dy@netaxs.com.

Ghost Mouse 1.1 is copyright 1993, Mark Pilgrim, MerriMac Software Group.


#### BINHEX     glo-app-folder.hqx   ****

From: 3gl21@qlink.queensu.ca
Subject: GLoAppFolder.sit - support for accessing application folder


GLoAppFolder class
Copyright � 1997 Gregory Lo. All rights reserved.
Description:
     This class provides some support for accessing files and
     subfolders in the same folder as the application.

Notes:
     Near the start of your application, just make a call to
     GLoAppFolder::Startup(); This initializes a static FSSpec with the
     location of your application.

     Various calls are provided to create modified FSSpecs based on
     this one; and open resource files in those places.

     You can change the FSSpec using file or folder name strings from a
     string list resource, or via a pointer to a pascal string. For
     instance:

        * osErr = GLoAppFolder::MakeFSSpec( "\pPlugins", myNewFSSpec );
        * osErr = GLoAppFolder::MakeFSSpec( kFolderNamesID,
          kPluginsFolderName, myNewFSSpec );

        * refNum = GLoAppFolder::OpenResFile( "\pSounds", fsRdPerm );
        * refNum = GLoAppFolder::OpenResFile( kFileNamesID,
           kSoundsFileName, fsRdPerm );

     Other information accessors are provided.

        * vRefNum = GLoAppFolder::GetVolumeRefNum();
        * parID = GLoAppFolder::GetParentID();

        * myConstFSSpecPtr = GLoAppFolder::GetAppFileFSSpecPtr();
        * myConstFSSpecRef = GLoAppFolder::GetAppFileFSSpec( void );

Change history:
     04Nov1997      * Updated documentation
Contacting the Author:
     email:         * gregory-lo@usa.net
                    * 3gl21@qlink.queensu.ca (before May, 1998)
License:

     License is given to freely use this in any of your code:
     commercial, or otherwise. Send me a postcard or email if you do.
     Copyright � 1997 Gregory Lo. All rights reserved.



#### BINHEX     glo-st-dial-action.hqx   ****

From: 3gl21@qlink.queensu.ca
Subject: GLoStDialAction.sit - support for live-scrolling scrollbars


GLoStDialAction class

Copyright � 1997 Gregory Lo. All rights reserved.

Description:

     This class provides support for live-scrolling with a standard
     scroll-bar control.

Notes:
     Only a handle to the control, the point from which to start
     tracking, and a pointer to a change-value-procedure is needed.

     One need only instantiate a GLoStDialAction object, and use and
     reuse it whenever live thumb-tracking is needed. For example:

          GLoStDialAction theThumbTracker;               :
          theThumbTracker( myControlRef, thePoint, MyChangeValueProc );

          theThumbTracker( anotherControl, anotherPoint, anotherProc );

     The GLoStDialAction object is a functor -- an object that behaves
     like a function. Its operator() has been overloaded to support
     this.

     A convenience function, TrackIndicator(), is provided. An example
     call:

          TrackIndicator( myControlRef, thePoint, MyChangeValueProc );

     The change-value-procedure must be declared as follows:

          void MyChangeValueProc( ControlRef inCntrl, const SInt32 inValue );

     One should test that only the control's indicator is being pressed
     before invoking the GLoStDialAction object. Hits in other parts of
     the control can be handled in the normal fashion. (ie. call
     ::TrackControl() with or without a control action procedure).

Change history:

     30Oct1997      * Changed to set the control value before calling the
change
                      proc
                    * Changed to redraw the control completely after
tracking is
                      done
     04Nov1997      * Restored the slop rectangle handling
                    * Changed some #ifdef's to #if's
                    * Updated documentation

Contacting the Author:

     email:         * gregory-lo@usa.net
                    * 3gl21@qlink.queensu.ca (before May, 1998)

License:

     License is given to freely use this in any of your code:
     commercial, or otherwise. Send me a postcard or email if you do.
     Copyright � 1997 Gregory Lo. All rights reserved.



#### BINHEX     glue-window-421-c.hqx   ****

Date: Sat, 25 Mar 1995 19:34:00 +0900
From: "GBH06222@niftyse" <GBH06222@niftyserve.or.jp>
Subject: GlueWindow4.2.1(source) A Window Utility

Hi,

This is source code of GlueWindow4.2.1. GlueWindow4.2.1 is sent
at same time.
Details is written in ReadMe file in this BinHexed package.
Of course, no virus is included (checked with Disinfectant 3.5).

I think that this code should be in /dev directory (old version
4.1.2 is posted).
Including in CD-ROM will be welcome, too.

Takenori Kabeya
GBH06222@niftyserve.or.jp
kabeya@atlas10.kuic.kyoto-u.ac.jp


#### BINHEX     glypha-iii-c.hqx   ****

From: leo@cp.tn.tudelft.nl (Leo Breebaart)
Subject: Glypha III Src [arcade game source code]
Date: Sat, 25 Feb 1995 14:51:05 +0100 (MET)

This is the fully documented (and free) CodeWarrior C source
code to John Calhoun's Macintosh arcade game Glypha III.

Leo Breebaart (leo@cp.tn.tudelft.nl)


#### BINHEX     gms-10b2-o.hqx   ****

Subject: GMS1.0b2 (music w/ QT2.0 library)
Date: Wed, 21 Sep 1994 19:05:01 -0600 (CST)
From: "Glenn Andreas" <gandreas@mirage.skypoint.com>

Enclose is GMS1.0b2, a library for adding background music with QuickTime 2.0
to your programs (QT 2.0 not included).  It is a .o file that can be linked
with most any compiler (it was written in TP)  There are six simple calls (init,
de-init, idle, suspend, resume, and play) that provide a simple way to use
the music playing components.  Once set up, playing music is a simple as
playing a sound resource (simpler, actually).  Includes a utilities to convert
MIDI files to "Musi" resources (it doesn't play MIDI files directly).
 
This is a "companion" library to the Oct MacTech article on QT Music.  If you
want to include this library in your application, all I ask is a copy and
credit in the about box...
 
Glenn (yes, I'm still working on Chimera) Andreas
gandreas@aol.com
 


#### BINHEX     gmz-libraries.hqx   ****

Date: Fri, 23 Dec 1994 21:45:46 -0500
From: gmz@po.CWRU.Edu (Georges M. Zwingelstein)
Subject: libraries for port of GNU patch, diff and rcs to the Macintosh.

gnu.patch.2.1.hqx : GNU patch for the Macintosh
gnu.diff.2.0.hqx  : GNU diff for the Macintosh
gnu.rcs.5.6.hqx   : GNU rcs for the Macintosh
gmz.libraries.hqx : Libraries to port the above programs to the Macintosh.

Merry Christmas and Happy new year.

Georges


#### BINHEX     gnu-bison-122-c.hqx   ****

From: Scott Hofmann <scotth@visix.com>
Subject: GNU Bison 1.22 THINK C 6.0 port
Date: Thu, 11 Aug 1994 17:38:36 -0400 (EDT)

This is a minimal port of the GNU YACC-compatible parser generator Bison,
version 1.22, for Symantec's THINK C 6.0. A compiled application is
included, so you don't need THINK C in order to use Bison (although it
won't do you much good if you can't then compile y.tab.c!) Please 
direct any questions concerning Mac specifics to myself rather than
the GNU people - they don't like Apple much, and will just lecture
you on the evils of Apple.

                                                     scott

-------------------------------------------------------------------------------
J. Scott Hofmann                   | "Back off, man, I'm a scientist!"
scotth@visix.com                   |   -Dr. Peter Venkman, _Ghostbusters_


#### BINHEX     gnu-flex-246-c.hqx   ****

From: Scott Hofmann <scotth@visix.com>
Subject: GNU Flex 2.4.6 for THINK C 6.0
Date: Tue, 26 Jul 1994 12:01:24 -0400 (EDT)

This is GNU Flex version 2.4.6 compiled in Symantec C++ 6.0. Flex is the GNU
lex-compatible lexical analyzer. This version is a minimal port to the 
Macintosh - the only changes were to call ccommand() in main() to get the
command-line arguments.

This file replaces the THINK-C version of Flex 2.3.7. A compiled application is
included, so you do not need Symantec C++ in order to use Flex 2.4.6. Full
documentation is included, as are the sources per the GNU Public License.
Macintosh-specific release notes are included in flex-2.4.6:MISC:Macintosh.

I am currently working on a CodeWarrior port, with an enhanced front end - not
just the ccommand() dialog box. Any other questions, please drop me a line.

                                                            scott

-------------------------------------------------------------------------------
J. Scott Hofmann                   | "Back off, man, I'm a scientist!"
scotth@visix.com                   |   -Dr. Peter Venkman, _Ghostbusters_



#### BINHEX     gnu-gdbm-173-c.hqx   ****

From: tsyang@dec-5.CE.Berkeley.EDU (Tzong-Shuoh Yang)
Subject: GNU gdbm-1.7.3: a database manager
Date: Mon, 23 May 94 00:48:24 -0700

Hello,

This is the mac port of GNU gdbm-1.7.3 database manager. 
The Think C 7.0 source code is included.  This is GNU
free software.

Have fun.

Tzong-Shuoh Yang
(tsyang@ce.berkeley.edu)
 
====================================================================

#### BINHEX     gnu-patch-21.hqx   ****

Date: Fri, 23 Dec 1994 21:45:46 -0500
From: gmz@po.CWRU.Edu (Georges M. Zwingelstein)
Subject: libraries for port of GNU patch, diff and rcs to the Macintosh.

gnu.patch.2.1.hqx : GNU patch for the Macintosh
gnu.diff.2.0.hqx  : GNU diff for the Macintosh
gnu.rcs.5.6.hqx   : GNU rcs for the Macintosh
gmz.libraries.hqx : Libraries to port the above programs to the Macintosh.

Merry Christmas and Happy new year.

Georges


#### BINHEX     go-sit-in-the-corner-c.hqx   ****

From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Go Sit In The Corner (source code)
Date: Sun, 16 Jan 1994 23:58:43 -0500 (EST)

Go Sit In The Corner will make your cursor jump to a corner of the screen
after a specified amount of time.  Completely configurable control panel
(which corner, how long before it jumps, whether it only jumps after a
period of inactivity).  This archive contains complete THINK C source code
and project files.  The INIT alone is also available; check ftp sites or
e-mail f8dy@netaxs.com.  Finger f8dy@netaxs.com for complete program list. 
Copyright (C) 1994, Mark Pilgrim.  Please read enclosed file "GNU General
Public License" for licensing details.


#### BINHEX     graf-sys-20-p.hqx   ****

From: cfranz@iiic.ethz.ch (Christian Steffen Ove Franz)
Subject: GrafSys 2.0 Submission
Date: Wed, 26 Jan 1994 18:50:51 --100


Dear Moderators, enclosed please find GrafSys 2.0. Please note that the
2.0 release does not replace the 1.x version since it is very different.

What is 3D GrafSys 2.0
======================
 
GrafSys is a hierarchical object-oriented class library for THINK Pascal. It is
designed to facilitate easy 3D graphics and animations in your programs. GrafSys
supports full 3D control of graphical objects and electronic eye. Graphical
objects can be independently rotated (around arbitrary axes), translated and
scaled. Objects can inherit transformations (rotation, scaling and translation)
from other objects. GrafSys supports dynamic (i.e. on-the-fly) and multiple
inheritance of transformations and an unlimited number of so-called operators
(matrices) per object.
 
The GrafSys provides objects for 3D points, lines and whole objects that can
contain up to 8000 lines in full RGB color and more than 250'000 points. GrafSys
also supports ultra-fast polygon filling using the triangulation approach. With
it you can easily implement hidden-surface removal.
 
Designed for fast and simple to program animations, GrafSys supports an
AutoErase feature where the object automatically erases its previous image
before redrawing itself. For flicker-free animations GrafSys also provides easy
to use Off-Screen bit map handling.
 
GrafSys is a combination of procedures and a powerful, extensible class library
that can be easily curtailed to your specific needs. For example  the
general-purpose 3D object 'TSObject3D' understands over fifty messages for such
diverse things as building a point/line database, rotating and drawing itself.
 
The 2.0 version comes with full source code.
 
Christian Franz


#### BINHEX     graf-sys-triangle-p.hqx   ****

From: cfranz@home.malg.imp.com
Subject: GrafSys 2.0 Triangle Files [part 1 of 1]
Date: Mon, 28 Feb 94 21:18:57 +0100
Organization: Christian is currently at home.


Dear moderators,

     a few weeks ago I submitted GrafSys 2.0, a 3D Graphics Library and
animation tool. Many people have told me that I forgot to include the
library files for the triangle project. You need these files in order to
re-compile the library. 

Well, here they are. Liva and in stereo :-)

Cheers,
Christian 

---
cfranz@home.malg.imp.com                          Voice: + 1 / 261 26 96
Christian Franz  -  Sonneggstrasse 61  -  CH-8006 ZUERICH  -  Swizerland

-- cut here -- begin GrafSys-C-lib-int.hqx -- part 1 of 1 --

#### BINHEX     gravity-mouse-11-c.hqx   ****

From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Gravity Mouse 1.1 (source code) 
Date: Sat, 13 Nov 1993 23:33:23 -0500 (EST) 

Gravity Mouse will cause your mouse to be occasionally overcome by gravity.
This INIT is free and is distributed under the GNU General Public License;
this archive contains complete THINK C 6.0.1 source code and project files
for the INIT.  If you do not have FTP access, e-mail the author for a copy
of the INIT, the source code, or a list of other programs by the same author.
The address is f8dy@netaxs.com.

This code demonstrates the basics of writing and installing a VBL. This code
should work under any system, with any monitor, on all Macintoshes.  Please
report any bugs/comments/suggestions to f8dy@netaxs.com.

Gravity Mouse 1.1 is copyright 1993, Mark Pilgrim, MerriMac Software Group.


#### BINHEX     halma-12-c.hqx   ****

From: f8dy@netaxs.com
Subject: Halma 1.2 (source code)
Date: Fri, 15 Jul 1994 01:22:29 -0400 (EDT)

Halma 1.2 is a solitare board game in which you must move nine tiles from
one corner of the board to the other in the minimum number of moves.  21
unique boards in all.  This version fixes several technical bugs and revamps
the help section interface.  This archive contains the complete THINK C 7
project and resource files.  Application also available; check ftp sites or
e-mail f8dy@netaxs.com.  Finger f8dy@netaxs.com for complete program list.
Copyright (C) 1994, Mark Pilgrim.  Please read enclosed file "GNU General
Public License" for licensing details.


#### BINHEX     hcmdbutton-attachment-121.hqx   ****

From: hsoi@eden.com
Subject: HCmdButtonAttachment 1.2.1 - A PowerPlant Class


A Metrowerks PowerPlant inherited class that gives controls (LControls) a
command-key equivalent. This allows for more keyboard navigation. For
example, the traditional "Save before closing?" dialog asks to "Save",
"Cancel" or "Don't Save".  Save is typically the default key (return) and
Cancel the cancel (escape), but there is no keyboard way to hit Don't 
Save.
Enter HCmdButtonAttachment.

With HCmdButtonAttachment, you can give any LControl a command-key
shortcut.  You can specify the key to be the first letter/character of the
control's descriptor or it can be a character of your own arbitrary
specification. You can also have the title of the control change to 
display
the shortcut or not, and do so after a user-configurable amount of time.

This archive includes the HCmdButtonAttachment sources, a custom CTYP file
for use with Constructor 2.4 or later, and an example application to
demonstrate the class.

For complete information, please read the README file enclosed in the
archive.

Thanx, and enjoy!

John C. Daub
Hsoi's Shop
<http://www.eden.com/~hsoi/prog.html>



#### BINHEX     headlines-101-c.hqx   ****

From: k044477@hobbes.kzoo.edu (Jamie R. McCarthy)
Subject: Headlines 1.0.1 code 
Date: Mon, 23 Nov 92 9:22:20 EST 

This is the source code for the After Dark module "Headlines,"
version 1.0.1.

I don't know whether it's legal to redistribute two of the source files
I used.  For that reason, I've not removed the object code for those
files, and have included only their header files.  They are
ATMInterface.c and NeoTextBox.c.  If anyone can advise me about the
legality of distributing these sources, I'd like to hear from them.
In any event, you'll probably need to keep the project file and not
"Remove Objects" if you want to successfully compile Headlines.

Note that this submission does not include the code to Greg Smith's
"spew," which was the basis for Headlines.  This is only because Greg's
distribution terms precluded putting this on e.g. Pacific HiTech's
Info-Mac CD-ROM.  My own terms, now, are a little looser.
I ftp'd the source to "spew" from wuarchive.wustl.edu, in
/usenet/comp.sources.games/volume01, where it probably still is.
--
 Jamie McCarthy      Internet: k044477@kzoo.edu      AppleLink: j.mccarthy


#### BINHEX     hermes-2-30-headers-p.hqx   ****

Date: Sun, 17 Jul 94 18:56 EDT
From: michael.krause@exchange.org (Michael Krause)
Subject: THINK Pascal Hermes Headers Files for v3.0 II



--========================_12538956==_
Content-Type: text/plain; charset="us-ascii"

Hermes programming headers in THINK Pascal for Hermes II v3.0




--========================_12538956==_
Content-Type: application/mac-binhex40; name="HermHeaders_II_3.0.p"
Content-Disposition: attachment; filename="HermHeaders_II_3.0.p"


#### BINHEX     hmarquee-caption-112.hqx   ****

From: hsoi@eden.com
Subject: HMarqueeCaption 1.1.2 - A PowerPlant Class


A Metrowerks PowerPlant inherited class that displays a horizontally
scrolling (from right to left) "marquee" of text, similar in appearance
to the scrolling JavaScript marquee that you often see across the bottom
of web browser windows.

Features:
- Utilizes offscreen GWorlds for smooth scrolling of text.
- Uses text Handles for an amount of text limited only by available 
memory.
- Utilizes modifier keys to modify scrolling behavior (increase scrolling
  speed, scroll left to right, pause scrolling).

Can be used in About boxes for scrolling credits, in JavaScript 
implementations
for the scrolling caption, in applications that need ticker-tape-style
animations, or anywhere a marquee-style sign and animation is desired.

The HMarqueeCaption distribution contains the HMarqueeCaption class, a 
CTYP
resource for easier editing in Metrowerks Constructor, and a demonstration
application to show just how easy it is to use HMarqueeCaption (made with
CodeWarrior Professional 1).

For complete information, please read the README file enclosed in the
archive.

Thanx, and enjoy!

John C. Daub
Hsoi's Shop
<http://www.eden.com/~hsoi/prog.html>



#### BINHEX     hotlist-to-html-072-f.hqx   ****

Date: Tue, 22 Nov 1994 19:46:03 +0100
From: weimann@ZIB-Berlin.DE (Lutz Weimann)
Subject: Hotlist2HTML version 0.7.2 source code



--========================_18491678==_
Content-Type: text/plain; charset="us-ascii"

Dear Moderators,

This is the source-code-only archive of Hotlist2HTML (v.0.7.2).
Please replace version 0.6.1, which is stored as
"dev/src/hotlist-to-html-061-f.hqx", by the new one.

Thanks.

Hotlist2HTML (version 0.7.2) converts a NCSA-MacMosaic
Hotlist or a EINet-MacWeb Hotlist (resource)  file to a HTML-page,
wherein each URL of the Hotlist is associated with it's corresponding
menuitem name. The HTML output will be normally sorted lexically by
the menuitem text, but re-sorting of the Hotlist may be suppressed,
if desired. The HTML output is now compatible for importing by
Netscape Mosaic into bookmarks.
This source code is written in an extended Fortran 77 language.
You need Language Systems Fortran 3.x and MPW 3.2 (or 3.2.3)
to make use of the it.

Lutz Weimann,  weimann@zib-berlin.de



--========================_18491678==_
Content-Type: application/mac-binhex40; name="Hotlist2HTML0.7.2_source.sit"
Content-Disposition: attachment; filename="Hotlist2HTML0.7.2_source.sit"


#### BINHEX     hqx1.hqx   ****

From: tinyjohn@sk.sympatico.ca
Subject: HQX1.hqx

Routines for working encoding or decoding BinHex.

Full C source code, linkable libraries, documentation, and
a fully functional example MPW tool.

Copyright (C) 1995, 1996, 1997 by John Montbriand.
All Rights Reserved.
Permission granted for public use.






#### BINHEX     hsharable-resource-12.hqx   ****

From: hsoi@eden.com
Subject: HSharableResource 1.2 and HSharablePicture 1.2 - PowerPlant Cla


HSharableResource is a Metrowerks PowerPlant inherited class that 
implements simple garbage collection for MacOS Resources. Using 
LSharable and TSharablePtr, the concept of reference counting makes this 
all possible. HSharableResource strives for minimal reliance upon 
PowerPlant and could possibly be used in non-PowerPlant contexts.

HSharablePicture is a variant upon PowerPlant's LPicture class. It 
utilizes HSharableResource to manage the 'PICT' resource so it can clean 
up after itself.

The distribution contains the HSharableResource source, the 
HSharablePicture source, a CTYP file for HSharablePicture, and a small 
demonstration application. The files in the archive were created with 
CodeWarrior Professional 1.

For complete information, please read the README file enclosed in the
archive.

Thanx, and enjoy!

John C. Daub
Hsoi's Shop
<http://www.eden.com/~hsoi/prog.html>



#### BINHEX     hsois-app-shell-10a4.hqx   ****

From: hsoi@eden.com
Subject: Hsoi's App Shell 1.0a4 - a MacOS developer tool


Hsoi's App Shell was a big learning tool for me to learn how to
write MacOS applications in C using Metrowerks CodeWarrior.  I
felt that it might be of use to other people, so I wanted to have
it publicly available to the MacOS development community.

So, what can Hsoi's App Shell do or show you how to do?

- How to use WASTE, Marco Piovanelli's WorldScript Aware
  Styled Text Engine as a replacement text engine for TextEdit
- How to use the WASTE Object Handlers
- How to use Gestalt to properly check for system capabilities
- How to use UniversalProcPtr's (both usage and how to create
  your own!)
- How to have code that works on both 68k and PPC based Macintoshes
- How to read from and write to files
- How to use CustomGet/PutFile routines with your own custom
  dialog filters
- How to use Aliases and take advantage of the Alias Manager
- How to Save, Save As, and Revert files
- How to properly deal with locked files
- How to take advantage of temporary files and FSpExchangeFiles
  for safe saving techniques
- How to use nifty functions like FindFolder
- How to properly work with resources and the Resource Manager
- How to add name strings to help orphaned document files
- How to do submenus
- How to do dynamic menus (menus created at runtime, like a
  Windows menu)

...and lots more

Hope it's useful to you!! 

John C. Daub
Hsoi's Shop
<http://www.eden.com/~hsoi/prog.html>



#### BINHEX     hstringlist-11.hqx   ****

From: hsoi@eden.com
Subject: HStringList 1.1 - A PowerPlant Class


HStringList a Metrowerks PowerPlant class that implements an object for 
creation, management, and manipulation of string lists. It is primarily 
oriented towards 'STR#' resources, but the class can be easily modified 
to suit any similar such need.

HStringList can handle the read/write of the resource, management of it, 
use of Pascal-style or C-style strings. It strives to offer a lot of
functionality and flexibility. One could easily extend the class's 
functionality to suit just about any string-list management needs.

Due to developments in PowerPlant, HStringList requires at least 
PowerPlant v1.8 (part of CodeWarrior Professional 2). There is a simple 
demo application included in the archive to demonstrate how the class 
can work.

For complete information, please read the README file enclosed in the
archive.

Thanx, and enjoy!

John C. Daub
Hsoi's Shop
<http://www.eden.com/~hsoi/prog.html>



#### BINHEX     htoggle-radio-button-122.hqx   ****

From: hsoi@eden.com
Subject: HToggleRadioButton 1.2.2 - A PowerPlant Class


This class (derived from the PowerPlant class, LToggleButton) attempts to
give the LToggleButton class a radio-button-like behavior (i.e. you can
create a radio group that includes objects of this type and only one 
member
of that group will be "on" at a time).

You can have in the same radio group both these HToggleRadioButton's and
LStdRadioButtons (or any other radio button class)...click on a radio,
the toggles will all be off. Click on a toggle, the radios will all be 
off. 

Includes a CTYP resource for ease of editing in Constructor 2.4 and higher
(sorry, no CPPb resource is available).

For complete information, please read the README file enclosed in the
archive.

Thanx, and enjoy!

John C. Daub
Hsoi's Shop
<http://www.eden.com/~hsoi/prog.html>



#### BINHEX     http-server-ot.hqx   ****

From: vinnie@webstuff.apple.com (vinnie moscaritolo)
Subject: http OT sample

HttpServer Macintosh OpenTransport Network Server shell

Version: early but functional

Apple Macintosh Developer Technical Support
Written by:  Vinne Moscaritolo

Copyright (work in progress)  Apple Computer, Inc

You may incorporate this sample code into your applications without
restriction, though the sample code has been provided "AS IS" and the
responsibility for its operation is 100% yours.  However, what you are
not permitted to do is to redistribute the source as "DSC Sample Code"
after having made changes. If you're going to re-distribute the source,
we require that you make it clear in the source that the code was
descended from Apple Sample Code, but that you've made changes.

HttpServer is a MacOS faceless background task that can be used as framework
for developing connection based OpenTransport network servers. Written in
Metrowerks C++, the HttpServer utilizes the Thread Manager, OpenTransport,
AppleEvents (barely) and C++ IOStreams.


#### BINHEX     hyper-cuber-20-cpp.hqx   ****

From: gregt@math.ohio-state.edu (Greg Ferrar)
Subject: HyperCuber 2.0 Source Code
Date: Fri, 6 May 1994 16:12:55 -0400



--========================_19455036==_
Content-Type: text/plain; charset="us-ascii"

HyperCuber 2.0 Source Code
 by Greg Ferrar

This contains the source code to HyperCuber 2.0, a freeware program
which can display and rotate objects of arbitrary dimension.  HyperCuber
2.0 is available separately from major Mac ftp sites, and includes complete
documentation.

HyperCuber 2.0 was written using Symantec C++ 6.0, which is a really nice
programming environment (7.0 is in the mail...).  You should be able to
compile and run it immediately.

I have not made any special attempt to prepare this code for
distribution, so it appears here exactly as I wrote it.  I tried to write
clear and well-documented code, but I don't guarantee anything.  I
especially don't guarantee that it all works properly, though I know of
no blantant bugs.

If you have any questions about my code, feel free to send me email at
gregt@math.ohio-state.edu.  I will do my best to explain what
I have written.

  -Greg Ferrar (gregt@math.ohio-state.edu)



--========================_19455036==_
Content-Type: application/mac-binhex40; name="HyperCuber_2.0_Source.sit"
Content-Disposition: attachment; filename="HyperCuber_2.0_Source.sit"


#### BINHEX     image-144-pas.hqx   ****

Date: Thu, 18 Jun 92 10:20:03 -0400 
From: wayne@zippy.nimh.nih.gov(Wayne Rasband)
Subject: NIH Image 1.44 Source(Binhex) 

This is the Think Pascal source code for Image 1.44, a public domain Mac
program for capturing, analyzing, editing, annotating, animating, and
printing images. It consists of 32,853 lines of source code in 20 modules.

--wayne rasband(wayne@helix.nih.gov)




#### BINHEX     infinity-windoid-wdef-30-c.hqx   ****

Date: Mon, 20 Feb 1995 18:40:19 -0800
From: tgaul@halcyon.com (Troy Gaul)
Subject: Infinity Windoid WDEF 3.0

This archive contains resource files and the source code for a standalone
code resource that conforms to a Window Definition (WDEF), as defined by
Apple Computer in Inside Macintosh.

It provides a 'windoid' appearance. A windoid is a floating window that
appears above document windows in an application and is commonly used for
tool palettes, information windows, and the like.

FEATURES:
-  Supports System 7-style coloring of windows.
-  In System 7, the tinge color set by the user in the Color control panel
is used.
-  Supports a zoom box and/or grow box.
-  Title bar can appear along the left of the window as well as across the top.
-  A DeviceLoop is used so the Windoid will be drawn correctly even when it
crosses monitors of differing depths.
-  In System 7, indexed color tables are checked to see if there are enough
different colors to display the color version (like the system WDEF).
-  Allows a title in the titlebar.
-  Full source code included (compatible with Metrowerks C, MPW C, and
Symantec C)
-  No usage fees

CHANGES IN VERSION 3.0
-  Added a new variation that makes the Infinity Windoid act exactly like
the System 7.5 floating window WDEF.
-  Changed the address information (both e-mail and US mail) to reflect my
new (well, not so new) location.
-  Includes project files for all three major brands of Macintosh C compilers.
-  Fixed some small inconsistencies between Infinity Windoid and System WDEF.
-  Requires Universal Headers.
-  When compiling for PowerPC, the drawing routines no longer allocate a
small amount of temporary memory in the heap each time they are called.
-  A few compiler options have been removed to simplify the code.

_Troy Gaul
 Infinity Systems
 tgaul@halcyon.com (Internet, preferred)
 TGaul (on AOL)


#### BINHEX     init-example-cw.hqx   ****

From: Gordon Watts -- U of Rochester <GWATTS@WHCDF.FNAL.GOV>
Subject: FWD: INIT, globals, multisegments in CW
Date: Tue, 15 Mar 1994 8:37:56 -0600 (CST)

From:	SMTP%"cwarrior@netcom.com"   15-MAR-1994 07:22:52.80
To:	GWATTS
CC:	
Subj:	INIT, globals, multisegments in CW

Mime-Version: 1.0
Content-Type: multipart/mixed; boundary="========================_27555112==_"
Date: Tue, 15 Mar 1994 07:25:51 -0500
To: cwarrior@netcom.com
From: joe zobkiw <zobkiw@datawatch.com>
Subject: INIT, globals, multisegments in CW
Message-Id:  <9403150724.aa05115@gateway.datawatch.com>
Sender: owner-cwarrior@netcom.com
Precedence: list
Reply-To: cwarrior@netcom.com



--========================_27555112==_
Content-Type: text/plain; charset="us-ascii"

At the expense of being flamed off the face of the earth...these two files
I am sending are small and have been requested by numerous people. I will
post them here this one time. If anyone wants to submit them to macgifts,
please do so.

The first is an INIT written in CW that shows how to use their A4 stuff, as
well as handle patching a trap, multi-segments, etc. Enjoy.




--========================_27555112==_
Content-Type: application/mac-binhex40; name="Warrior_INIT_folder.sit"
Content-Disposition: attachment; filename="Warrior_INIT_folder.sit"


#### BINHEX     internet-loc-cm-source-12.hqx   ****

From: Tomasz Kukielka <tkukiel@mac.com>
Subject: Internet Location CM 1.2 source


"Internet Location CM" is a free Contextual Menu plug-in which helps
managing URLs.
Here is the source code for version 1.2.

Tomasz Kukielka
http://www.ire.pw.edu.pl/~tkukiel/



#### BINHEX     irc-client-c.hqx   ****

Date: Fri, 23 Jul 93 13:39:08 MET DST 
From: Olaf Titz <s_titz@ira.uka.de>

This is a Macintosh IRC (Internet Relay Chat) client. 
It allows you to talk to people all over the world over the Internet.

It will run on any Mac with System version 6.0 or greater and the 
MacTCP driver, version 1.0 or greater.

This is free software according to the GNU General Public License 
(any version). Refer to the file COPYING for precise terms and conditions.

This package contains complete source code and auxiliary files for 
building the binary with THINK Pascal 2.0.1 or later versions.
Portions are Copyright 1992 Peter N.Lewis, read the notices in the
TCP Libraries files.

Send comments, suggestions, bug reports etc. to:
Olaf Titz  <s_titz@ira.uka.de>


#### BINHEX     ircle-151-p.hqx   ****

Date: Thu, 25 Nov 93 17:39:09 MET
From: Olaf Titz <s_titz@ira.uka.de>
Subject: ircle 1.5.1 source

This is a Macintosh IRC (Internet Relay Chat) client. 
It allows you to talk to people all over the world over the Internet.

It will run on any Mac with System version 6.0 or greater and the 
MacTCP driver, version 1.0 or greater.

This is free software according to the GNU General Public License 
(any version). Refer to the file COPYING for precise terms and conditions.

This package contains complete source code and auxiliary files for 
building the binary with THINK Pascal 2.0.1 or later versions.
Portions are Copyright 1992 Peter N.Lewis, read the notices in the
TCP Libraries files.

Send comments, suggestions, bug reports etc. to:
Olaf Titz  <s_titz@ira.uka.de>



#### BINHEX     jgne-filter-shell-c.hqx   ****

Date: Wed, 21 Jun 1995 09:32:19 -0500
From: gchapman@icis.on.ca (Greg Chapman)
Subject: jGNEFilter Shell.cpt.hqx

The following is a Think C 6.0.x project, with source and a finished
example, of how to write a jGNE Filter. You can modify it simply to accept
your own code, by plugging whatever you want right in to the code. Free to
to distribute, and free to use in your programs. Just don't repost this
file if you've modified it.

Greg Chapman - Mac/WWW Programmer/Developer
London, Ontario, Canada
email: gchapman@icis.on.ca


#### BINHEX     jotto-ii-12-c.hqx   ****

From: f8dy@netaxs.com
Subject: Jotto ][ 1.2 source code
Date: Tue, 8 Nov 1994 00:16:44 -0500 (EST)

Jotto ][ 1.2 is a word game based on logic and frustration.  The computer
picks a random word (5 or 6 letters) and you have fifteen tries to guess it.
Similar to Mastermind, only with words.  Improvements in version 1.2:
improved the note pad, fixed several obscure bugs, many technical
improvements.  This archive contains the complete Metrowerks DR/4 project
and resource files.  Copyright (C) 1993-4, Mark Pilgrim.  Free, distributed
under the GNU General Public License.


#### BINHEX     jpeg-convert-c.hqx   ****

Date: Sat, 27 Feb 93 12:26:45 CST 
From: wf-jim!brunner@terminator.rs.itd.umich.edu (Jim Brunner)
Subject: source/c/JPEG-Convert-src10.hqx 

This is the source code distribution for version 1.0 of JPEG Convert.  JPEG
Convert is a Macintosh application that acts as an interface for the
Independent JPEG Group's code.  The Independent JPEG Group's code supports
JPEG conversion to different formats.

This distribution file contains source code only.  The pre-compiled
application is available under a separate distribution.  This distribution
does not contain the source for the Independent JPEG Group's software;
instructions for obtaining the IJG source are included in this
distribution.

Features:
        * Supports system 6 or 7
        * Converts JPEG file to/from GIF, PPM, & TARGA
        * RLE support available (not in default distribution)
        * Supports quantization, dithering, smoothing, grayscale
        * Supports batch drag & drop conversion with system 7
        * Balloon help and nifty dialogs
        * SOURCE CODE IS AVAILABLE (separate distribution)
-----------------------------------------------------------------------
Jim Brunner  (brunner%wf-jim.uucp%hobbes.uucp@twerp.ease.arco.com)


#### BINHEX     kanji-c-preprocessor-c.hqx   ****

From: Mikaeru <mikaeru@worldnet.fr>
Subject: KanjiCPreProcessor 1.2

KanjiCPreProcessor:
Japanese Shift-JIS C/C++/Rez pre-processor - free source code

KanjiCPreProcessor.c is the source code of a basic filter for C, C++, and
Rez source files, which strips all the comments, and replaces in strings
all the
Shift-JIS double-byte characters whose second byte happens to be a
backslash with their equivalent octal escape sequences, so that the source
files can be successfully compiled even when the compiler is not truly
multibyte-savvy, or when the Japanese script is not supported by the system
the compiler is running on...

Note: This code has been successfully compiled with CodeWarrior Discovery
Programming Edition 4, using the following project stationery:
	MacOS : C_C++ : Standard Console : Std C Console 68K
In addition, "ANSI strict" must be explicitly turned *off* in the C/C++
Language Settings Panel.

Disclaimer: This source code is provided "as is" and is free for you to
use, at your own risk. Please let me know of any bugs or suggestions for
improvements.

	--Michel MARIANI (a.k.a. Mikaeru)

Mikaeru Software: <http://home.worldnet.fr/mmariani/mikaeru/soft.html>


#### BINHEX     kant-generator-pro-131-c.hqx   ****

From: f8dy@netaxs.com
Subject: Kant Generator Pro 1.3.1 source code
Date: Wed, 28 Jun 1995 20:56:54 -0400 (EDT)

Kant Generator Pro 1.3.1 generates endless amounts of pseudo-Kantian gibberish
based on the vocabulary and sentence structure of Immanual Kant's "Critique
of Pure Reason."  You can also create your own generation modules to
generate anything you like.  Several sample modules are included.  Copyright
(c) 1994-5, Mark Pilgrim.  Please read enclosed file "GNU General Public
License" for licensing details.

Improvements since 1.2: added scripting support, added Speech Manager 
support, added Swedish Kant module, added background music, and more.


#### BINHEX     kill-drive-c.hqx   ****

From: Todd Wilson <tdwilson@freenet.columbus.oh.us>
Subject: Disabling floppy drive (prog+source)
Date: Wed, 15 Jun 1994 12:33:09 -0500



--========================_13547488==_
Content-Type: text/plain; charset="us-ascii"

This is a very simple hack that can disable the floppy drives on a Mac.
Not bullet proof by any means, but may have some applications outside of
my own system. Think C 7.0 project and source, along with
application/extension. StuffIt Deluxe archive.



--========================_13547488==_
Content-Type: application/mac-binhex40; name="Kill_Drive_=.sit"
Content-Disposition: attachment; filename="Kill_Drive_=.sit"


#### BINHEX     launch-creator-c.hqx   ****

Date: Wed, 3 Nov 93 11:37:36 -0600
From: oleg@ponder.csci.unt.edu (Kiselyov Oleg)
Subject: launch-creator.cpt - (source) get a file "double-clicked" from a running pgm


What:	get any file "double-clicked" from within a running program
Contents:
	launcher.cc 	- code itself (commented)
	vlauncher.cc	- verification routine
Language: Symantec C++ 6.0 (though worked for Think C 5.0, too)
System: System 7.x, but probably 6.x is OK, too.
Note: needs standard environment, see myenv-notify.cpt
Comments to: oleg@ponder.csci.unt.edu, oleg@unt.edu

Explanation:
This is a simple program that, given a file name, launches an
application-creator and has it handle the file. If the file
is an application, it is launched itself. The net result is
exactly the same as if the user had double-clicked on the file.
Synopsis
	void open_selection(const char * full_path_name)
Where the 'full_path_name' tells the full path name of the file that
should be "double-clicked". Though, a relative path name would do, too.
The present program achieves the magic by sending an 'Open Selection'
event to the Finder. It is significantly based on the FinderEvents
stack by Jon Pugh and Apple Computer, Inc. (C) 1991-92 Apple Computer, Inc.)
(which is written in Pascal and _very_ big and messy)

------------------------------------------------------------------------

#### BINHEX     launch-creator.hqx   ****

From: (Kiselyov Oleg) oleg@ponder.csci.unt.edu
Subject: launch-creator - (source) get a file "double-clicked" from 

What:  get any file/folder "double-clicked" from within a running program

Keywords: launch, Finder, scripting, AppleEvent

Language: C++, CodeWarrior9
System: System 7.x (7.5.3) but probably 6.x is OK, too.
Comments to: oleg@ponder.csci.unt.edu, oleg@unt.edu
Version 1.1, June 1996

New in version 1.1
  - the name of a file/folder to open can be specified either as an
    ASCII C string, or as a FSSpec
  - included (and shown off) code to convert FSSpec to the full path name
    (and how it can be used to figure out the full path name to the
    system folder and the stuff within)
  - now works under CW9 (the previous version was compiled with
    Symantec C++ 6.0)


#### BINHEX     libga-100.hqx   ****

From: octavian@agt.net (Octavian Micro Development)
Subject: libga100

libga100 is example C source code on how to write simple
applications using genetic algorithms.  Originally written
in K&R C, the included source has been ported to ANSI C and
compiled using MetroWerks CodeWarrior 9.

libga100 is originally copyright by Art Corcoran, and this
port is distributed with his permission.

Bernie Wieser
(octavian@agt.net)


#### BINHEX     libga-c100-c.hqx   ****

From: octavian@agt.net (Octavian Micro Development)
Subject: libga100

libga100 is example C source code on how to write simple
applications using genetic algorithms.  Originally written
in K&R C, the included source has been ported to ANSI C and
compiled using MetroWerks CodeWarrior 9.

libga100 is originally copyright by Art Corcoran, and this
port is distributed with his permission.

Bernie Wieser
(octavian@agt.net)


#### BINHEX     linked-lists-11-c.hqx   ****

From "MaT101@aol.com (Michael Terry)" Wed Mar 15 20:41:27 1995
Date: Wed, 15 Mar 1995 23:41:44 -0500
From: MaT101@aol.com (Michael Terry)
Subject: Linked Lists 1.1.sit.hqx



--========================_6835356==_
Content-Type: text/plain; charset="us-ascii"





--========================_6835356==_
Content-Type: multipart/header-set; boundary="========================_6835356==_D"



--========================_6835356==_D
Content-Transfer-Encoding: base64
Content-Type: application/applefile; name="%Linked_Lists_1.1.sit.hqx"
Content-Disposition: attachment; filename="%Linked_Lists_1.1.sit.hqx"

AAUWBwACAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAADAAAAMgAAABgAAAAJAAAASgAAACBM
aW5rZWQgTGlzdHMgMS4xLnNpdC5ocXhURVhUQk5IUQEAAWz/wAAAAAAAAAAAAAAAAAAA
AAAAAA==


--========================_6835356==_D
Content-Type: text/plain; name="Linked_Lists_1.1.sit.hqx"; charset="us-ascii"
Content-Disposition: attachment; filename="Linked_Lists_1.1.sit.hqx"

Enclosed is a submission for the source code folder of Mac development

(This archive can be included in CD ROMs)



LinkedLists version 1.1 are a set of generic linked list classes for use in a C++ 

environment. They are fairly well commented so you can quickly start using them in

your own applications.  The lists can self-sorting provided you override the logical

operators in the class you'll store.  Also included is a demo app using them and a

quick how-to sheet on how to implement template classes in Symantec C++.  The code

is freeware. 




#### BINHEX     little-c.hqx   ****

Date: Mon, 4 Oct 93 23:34:51 -0700
From: tsyang@dec-9.CE.Berkeley.EDU (Tzong-Shuoh Yang)
Subject: little_c.hqx - a C interpreter (Think C source)


This is the Think C 6.01 version of Little_C -- a subset C interpreter
by Herbert Schildt.

Little C is a C interpreter that can execute a subset of K&R ANSI C
programming language.  ANSI C is a robust and powerful programming
language, but the Little C interpreter only implements a limited range
of features. These include: parameterized functions with local variables;
recursion; if statement; do-while, while, and for loops; integer and
character variables; global variables; integer, character, and string
constraints; return statement; several library functions; several
operators; functions returning integers; and comments. A recursive-descent
parser is used to implement the C interpreter. Details of the development,
coding, and functionality of the C interpreter are described in

 Schildt, Herbert.
   Building your own C interpreter.
   Dr. Dobb's Journal of Software Tools v14, n8 (August, 1989):38
   (16 pages).

The original source code can be obtained by anonymous ftp from sites with
ddjmag archive, e.g. oakland.oak.edu.

Enjoy.

T. S. Yang  (tsyang@ce.berkeley.edu)
================================================================

#### BINHEX     lose-your-marbles-10-c.hqx   ****

From: f8dy@netaxs.com
Subject: Lose Your Marbles! 1.0 (source code)
Date: Thu, 14 Jul 1994 03:34:19 -0400 (EDT)

Lose Your Marbles! 1.0 is an infuriating board game in which you must
fill a board (as small as 5 x 5, as large as 8 x 8) with marbles such that
so row, column, or diagonal contains two of the same marble.  Not as easy
as it sounds...

This archive contains the complete THINK C 7 project and resource files.
Application also available; check ftp sites or e-mail f8dy@netaxs.com.
Finger f8dy@netaxs.com for complete program list.  Copyright (C) 1994,
Mark Pilgrim.  Please read enclosed file "GNU General Public License" for
licensing details.


#### BINHEX     lp-daemon-332-c.hqx   ****

Date: Thu, 1 Apr 1993 09:52:57 +0800 (WST) 
From: "Casper A. Boon" <casper@mips.cs.murdoch.edu.au>
Subject: lpDaemon332.src.cpt.hqx 

---2039267323-721586092-733629388:#10490
Content-Type: TEXT/PLAIN; charset=US-ASCII


Here are the THINK C 5.0.4 sources for version 3.3.2 of lpDaemon.  This
corrects a serious bug in version 3.3.1.

#### BINHEX     lp-daemon.hqx   ****

Date: Wed, 20 Jan 1993 15:15:41 +0800 (WST) 
From: "Casper A. Boon" <casper@mips.cs.murdoch.edu.au>
Subject: lpDaemon - a BSD compatible printer daemon for the mac 


lpDaemon and LPR
----------------

lpDaemon is a utility that implements the Berkeley Line Printer Protocols on
the Macintosh. It normally spools postscript file sent from a unix host and
sends them to a LaserWriter on the Mac network.

LPR is an lpDaemon client that submits jobs to a printer queue.  Typically a
text file is to a unix print queue.

lpDaemon and LPR run under system 7 and require MacTCP.


Casper Boon
April 1993

===========================================================================
Casper A. Boon,                               casper@mips.cs.murdoch.edu.au
Computer Science Programme,
School of Mathematical and Physical Sciences,
Murdoch University, South Street,                     PHONE:  (09) 360 2790
Murdoch, Western Australia, 6150.                  OVERSEAS: +61 9 360 2790
===========================================================================
---2039267323-721586092-733629388:#10490
Content-Type: APPLICATION/octet-stream; name="lpDaemon332.src.cpt.hqx"
Content-ID: <Pine.3.05.9304010927.B10490@mips>
Content-Description: 


#### BINHEX     mac-default-shell-101.hqx   ****

From: Brian Christensen <bkc@clarinets.de>


Mac Default Shell is a simple and small Mac application shell/skeleton 
for C programmers (this is the source code to a fully functional Mac 
application). The code is extensively commented, which means you can 
easily understand what's happening. All the standard elements of a Mac 
application are demostrated: menus, dialogs and windows. It requires a 
C/C++ compiler (MPW may have some trouble compiling - I'm working on a 
fix for the next version) and the Universal Headers 3.0 or later (for 
Appearance Manager Support).

The update to v1.0.1 removes some unnecessary code and includes some 
other minor changes and bug fixes (see the included Mac Default Shell 
Notes read me file for detailed information).

Brian Christensen
http://www.clarinets.de/bkc/software/



#### BINHEX     mac-gzip-10-c.hqx   ****

From: "J.A. Gutierrez E." <MacSPD@ivo.cps.unizar.es>
Subject: MacGzip 1.0 sources

        Hi

        These are the C sources for MacGzip 1.0
        (some bug fixes from 1.0b1)


#### BINHEX     mac-gzip-111-src.hqx   ****

From: MacSPD@ivo.cps.unizar.es
Subject: MacGzip 1.1.1 sources



	Source code for MacGzip 1.1.1
	
	(C sources for Symantec C 8.0 and MW CW 11)

--
    When the sunsets glow drifts away from you
    You'll no longer know if any of this was really true at all
    (The Cure)
    J.A. Gutierrez E. | finger spd@daphne.cps.unizar.es for PGP public key




#### BINHEX     mac-perl-418-c.hqx   ****

Subject: Mac_Perl_418_src
Date: Fri, 10 Mar 1995 19:08:31 +0100
From: Matthias Ulrich Neeracher <neeri@iis.ee.ethz.ch>

MacPerl is a Macintosh port of Perl [Programmable Extractor and Report Lister],
a highly flexible text manipulation languages with Unix origins. This archive
contains the full source code to build the application and the MPW tool.


#### BINHEX     mac-rtrace-1842-c.hqx   ****

From: Gregory Ferrar <ferrar@pike.cecer.army.mil>
Subject: MacRTrace1.8.4.2Code (MacRTrace source code resend)
Date: Fri, 23 Jun 1995 16:40:55 -0500 (CDT)


#### TEXT       mac-speech-p.txt   ****

Date: Sun, 22 Aug 1993 17:21:29 -0500
From: PAUL M SHELDON <psheldon@utdallas.edu>
Subject: simple speech manager translation to pascal code

    I have little experience in C and was grateful for the posting, in C,
of speech manager routine calls. It gave me an opportunity to make a
simple exercise to value learning C in the future by the book.
    In the following, I paste my C to pascal code translation of a
submission of a quick hack on this archive by Alan Coopersmith as
/info-mac/dev/mac-speech-01.hqx. It was a lot of fun to figure this simple
translation with a kid I mentor and then go on late into the night to make
the compiling linking and execution work.
    I tried to comment the code with some of my hard won understanding.
    Perhaps this brief segment will improve others courage as it has mine.
I had a lot of psychological inertia to get moving into enthusiastic momentum.
I look forward to translating Alexander W. Kourakos' C demo with Paul
Traue, my mentor-kid. Povl H. Pedersen has given me some reassurance.
    Notice what I am trying to say is this isn't much of a boast for me,
just a sense of remarkable joy that I can hook into new system extensions
from apple with pinterfaces. A few years ago the only guys I knew about

#### BINHEX     mac-starter-c.hqx   ****

From: David Eck <ECK%HWS.BITNET@Forsythe.Stanford.EDU>
Subject: dev/src/mac-starter-c.hqx (new version)
Date: 01 Feb 1994 10:50:28 -0500 (EST)


This file should replace "dev/src/mac-starter-c.hqx" in info-mac.

I have heard from several people who had trouble using
MacStarter with THINK C 6.0.  The problems seem to be caused
by stricter type-checking of pointer types in version 6.0.
The error messages will go away if you turn off the "Check Pointer
Types" option in the options box for THINK C (under the
Edit Menu), but there turn out to be a few actual errors
(not just type problems) that should be corrected.
So, I have updated MacStarter to work with THINK C 6.0,
as well as with version 5.0, and corrected known errors.

                              David Eck
                              eck@hws.bitnet
                              February 1, 1994

MacStarter is an application shell for writing quick, small programs
in THINK C (5.0 or 6.0).  If you are already a Mac programmer, you
probably have written your own such shell.  However, I am
posting this to info-mac because:
   -- it might be useful for a C programmer who wants to
get started writing programs with Mac interfaces without
facing the darker parts of Inside Macintosh or the THINK
Class library
   -- it uses a window class to provide the basic functionality
of windows (This provides a concrete example of how objects can
be used in THINK C.  It is also a neat way of localizing the
changes you need to make in the shell to produce a working
program.)
   -- I have actually put in the time to write fairly detailed
comments explaining how to use the shell




#### BINHEX     mac-starter-p.hqx   ****

From: David Eck <ECK@hws.bitnet>
Subject: dev/src/mac-starter-pascal.hqx
Date: Tue, 14 Dec 1993 17:32:13 -0600



--========================_13931840==_
Content-Type: text/plain; charset="us-ascii"

MacStarter_Pascal:

    A Macintosh application shell for writing small-to-moderate
    programs with THINK Pascal 4.0,

    AND including "expression.p", which provides facilities for
    parsing and evaluating mathematical expressions such as
    "x~2+7" or "rate * sin(omega)".

MacStarter_Pascal uses the object-oriented features of THINK
Pascal to implement windows with the standard Macintosh behavior.
The windows can contain "decorations" such as buttons and
text-input boxes.  A lot of comments are included in the source
files, and the source code for several simple applications is
included.  The expression-manipulation unit, "expression.p" can
be used separately from the rest of the shell; one of the sample
applications shows how this unit can be used for graphing
functions.

Note that MacStarter_Pascal is similar to, but more sophisticated
than, MacStarter_C (for use with THINK C), which I have distributed
previously.

This application shell is appropriate for programs that don't
need all the power and complexity of the THINK Class Library.
It is provided free-of-charge and royality-free, and it can
be freely distributed provided no charge is made for it.
(I also hereby give my permission for it to be distributed
on the info-mac CD ROM.)

This is a binhexed self-extracting archive.

David Eck
Department of Mathematics and Computer Science
Hobart and William Smith Colleges
Geneva, NY   14456
eck@hws.bitnet



--========================_13931840==_
Content-Type: application/mac-binhex40; name="MacStarter_Pascal.sea"
Content-Disposition: attachment; filename="MacStarter_Pascal.sea"


#### BINHEX     mac-wt-004-c.hqx   ****

From: pjcreath@phoenix.Princeton.EDU (Peter Creath)
Subject: MacWT 0.04
Date: Wed, 18 May 1994 14:24:36 -0500



--========================_6967288==_
Content-Type: text/plain; charset="us-ascii"

Enclosed is the entire Mac port of "wt", a 3D public domain engine.
This archive contains EVERYTHING relating to 0.04 on the home FTP site --
the documentation (what there is), the source code (in C), and the fat binary
demo.

I am not the author, nor am I the one who ported it to Mac.

Excerpts from the README:

wt - a 3D game engine                    Copyright (C) 1994 by Chris Laurel
---------------------------------------------------------------------------

This is still a preliminary version of my 3D game engine, wt.

* In the proud tradition of cp, mv, rm, as, and cc, now there is 'wt'
  wt (never capitalized) stands for "what's that?"

* This is not by any means a complete game.  It is just a demo of my
  graphics engine.  I'd never name a game wt.

* wt is portable software.  See the section on porting at the end of this
  README for information on what to change in order to port to another
  platform.

* Features:
        * Easy to edit world file.  Just haul out your favorite text editor
          and modify 'castle.world'  Or create your own .world file from
          scratch.  Whee.  Just don't get carried away because the world
          file format will be changing before the next release.
        * No BSP trees were killed to make this program.  Sorry . . . it's
          late.  BSP trees are elegant and fast *if* your environment is
          static.  I eventually want walls in wt that move and change shape.
          However, if I can't kill a bug having to do with walls perpendicular
          to the view plane, I may have to resort to a BSP tree for determining
          wall visibility (or if my current algorithm is too slow for worlds
          with a large number of walls.)
        * Variable texture map size.  Texture maps for walls can be any
          width you like, but the height must be either 64 or 128.  Floor
          textures must be either 64x64 or 128x128.  The main reason why
          arbitrary powers of two aren't supported has to do with the fact that
          Intels x86 chips don't have enough registers for my innermost loops.
        * Texture scaling for walls.  The walls have an x scale factor and
          a y scale factor.  It might be more properly called 'frequency,'
          since the smaller the parameter, the bigger the texture map will
          appear.  Supporting the scaling factors requires a couple of extra
          multiplies in the wall drawing function.

* Resources

        * A wt mailing list has been started recently.  Topics will include
            improving the engine design and adding features, porting the
            engine to different architectures, and game design using the wt
            graphics engine.  The addresses are:

                to subscribe:  wtm-request@magoo.uwsuper.edu
                to post a message: wtm@magoo.uwsuper.edu



--========================_6967288==_
Content-Type: application/mac-binhex40; name="MacWT-0.04.cpt"
Content-Disposition: attachment; filename="MacWT-0.04.cpt"


#### BINHEX     mac-zoop-21b1.hqx   ****

From: Tom Riley <tjriley@kagi.com>
Subject: MacZoop 2.1b1


MacZoop represents one of the most straightforward and most rewarding ways
to program the Macintosh. With very little effort, you can be right up to
speed developing your next great Mac application, without all that tedious
mucking about worrying about the event loop and all the standard toolbox
code to open windows, etc.

MacZoop is aimed at beginners to C++ programming, or newcomers to the Mac
platform, and is ideal for small to medium-sized projects. It is supplied
as full open source code, so all programmers should find something useful
in it.

Users of MacZoop 1.x will find themselves right at home in MacZoop 2.0, but
with hundreds of improvements and an even simpler architecture. This is the
most bug-free MacZoop ever released to date, and is utterly rock solid.

Requirements:

Metrowerks CodeWarrior Pro recommended



#### BINHEX     mac.hqx   ****

From: akochoi@netvigator.com
Subject: emacs-20.3-mac-src-d1


Macintosh port of GNU Emacs 20.3
This StuffIt archive contains the files needed to build the Macintosh
port of GNU Emacs 20.3.  Either Metrowerks CodeWarrior Pro 4 or MPW-GW
(Feb. 1999) can be used to build it.

Instructions for building this port can be found in the README file.

This port still lacks some major features of Emacs (e.g., dump-emacs,
subprocesses, and networking capabilities) and should be viewed as a
work in progress.  It is released under the GNU Public License.

This port has been built on a Power Macintosh 8500 with 48M of RAM.  You
should be able to build it if you have a better machine.

In additional to this file, you will need the standard source
distribution of GNU Emacs 20.3.

The Emacs source distribution, the Mac files, and files generated by
compilation take up a little less than 100M disk space.  Allow for a few
additional tens of megabytes of temporary disk space during a build.

A web page for this port can be accessed at

  http://www.cs.hku.hk/~choi/emacs/index.html

or

  http://home.netvigator.com/~akochoi/emacs/index.html

Up-to-date source code and patches as well as information about the port
will be posted there.

Enjoy!

Andrew Choi <choi@cs.hku.hk>



#### BINHEX     macbinary-ii-plus-pas.hqx   ****

Date: Tue, 9 Feb 1993 15:36:53 +0800 
From: Peter N Lewis <peter@cujo.curtin.edu.au>
Subject: source/pascal/macbinary2+100.hqx 


This is the THINK Pascal 4.0.2 source code for MacBinary II+, a 
System 7 drag&drop converter for MacBinary files.  The source 
code may be used for any non-commercial (ie, shareware or 
freeware) purpose as long as I get a mention in the about box 
and documentation of any derivative program.  The code is very 
sparsely commented.  All pascal units ending with .unit are 
taken from my personal library of reusable modules, and should 
be fairly easy to incorporate into any other program.  The 
source code uses Michael Hecht's Task Manager code, and could 
be used as an example of how to use that code, as well as 
supporting the core Apple Events.

Hope its useful to someone,
   Peter. <peter@cujo.curtin.edu.au>

MacBinary II+ v1.0.0 Copyright 1992-93 Peter N Lewis 


#### BINHEX     macintosh-tracker-12-c.hqx   ****

From: tomlaw@world.std.com (Thomas R. Lawrence)
Subject: MacTrackerSource1.20.cpt.hqx
Date: Sun, 8 May 1994 10:33:34 -0400

This is the source code for the Macintosh Tracker MOD player.

It includes Macintosh source to Marc Espie's Tracker 4.0 and
examples of how to call Frank Seide's Sound-Trecker and Antoine
Rosset's MADF-Library routines.

Project files were created with THINK C 6.0.

Direct all correspondence to:
Thomas R. Lawrence
tomlaw@world.std.com


#### BINHEX     made-170.hqx   ****

From: Gideon Greenspan <gdg@sigsoftware.com>
Subject: MADE 1.7.0 - Macintosh Application Development Essentials


Macintosh Application Development Essentials (MADE for short) is a tiny 
package of C/C++ code which provides all the lowest-level needs for a 
Macintosh application. It contains basic routines for dealing with 
errors, memory, menus, events, linked lists, AppleEvents and 
Drag-and-Drop.

MADE is used extensively at Sig Software for our own programs. Analog 
Helper, Cross Platform, Drop Drawers and Email Effects for Mac are built 
entirely on the MADE framework, while Email Merge and NameCleaner use 
parts of it.

If you purchase MADE, you will receive extra code for string 
manipulation, opening URLs, threading, dealing with memory and file 
buffers, dialog box items and opening and saving files with the new 
Navigation Services. All of these features are documented with comments 
in the code.

Version 1.7.0 adds Classic/Carbon glue code to help you build for both 
APIs from a single source code base, support for Appearance Manager Theme 
Change events and memory leak testing.

Sig Software - http://www.sigsoftware.com/



#### BINHEX     mailcheck-c.hqx   ****

Date: Wed, 20 Oct 1993 10:05:06 -0400 (EDT)
From: Aaron Wohl <aw0g+@andrew.cmu.edu>
Subject: check unix mail client

mailcheck / by Aaron Wohl N3LIW / Public Domain / mail n3liw+@cmu.edu
Home ftp site akutaktak.andrew.cmu.edu [128.2.35.1] /aw0g/mailcheck*
Available from compuserve in the ham radio sig/packet section

Mailcheck is an Init/cdev/driver to check for mail in a server
(unix) mailbox via UDP (TCP/IP) and pop a notification manager
dialog window or play a sound when mail comes in.

Sources included.  It talks to a unix server which is also
available from the above site.

Aaron Wohl (aw0g+@andrew.cmu.edu)


#### BINHEX     marksman-30-metro-cpp-sample.hqx   ****

From: Arthur Dent <dent@yarrow.wt.uwa.edu.au>
Subject: upload MarksmanCodeMetroCp-30.sea.hqx
Date: Sun, 13 Feb 1994 01:18:53 +0800 (WST)

Sample source code generated from the Marksman 3.0 code generator for
a sample prototype. See also the MarksmanEditorDemo-30 archive. 
This code is for use with Metrowerks DR1 C++ compiler.
ITMAKERS@Applelink.apple.com

#### BINHEX     marksman-30-think-pascal-sample.hqx   ****

From: Arthur Dent <dent@yarrow.wt.uwa.edu.au>
Subject: upload MarksmanCodeTPascal-30.sea.hqx
Date: Sun, 13 Feb 1994 01:19:31 +0800 (WST)

Sample source code generated from the Marksman 3.0 code generator
for a sample prototype. See also the MarksmanEditorDemo-30 archive.
This code is for use with Think Pascal compiler.
ITMAKERS@Applelink.apple.com

#### BINHEX     matts-scripts-as.hqx   ****

From: ai158@freenet.buffalo.edu (Matthew Ahrens)
Subject: Matt's Scripts
Date: Mon, 28 Mar 1994 09:25:53 -0500



These are some scripts for AppleScript that I wrote. They include:
Replace in text editor
Dial Number
Number Lines
Get Item Info

I hope you enjoy them!

#### BINHEX     maxwell-c.hqx   ****

From: kenlong@netcom.com (Ken Long)
Subject: NewMaxwell-c-src
Date: Fri, 4 Feb 1994 18:57:18 -0800 (PST)

Gift Givers!

This is source for Think C 5.0.4 which combines some routines found in 
the original PD source for Maxwell-DA and a microShell made from the TC 
demo "Bullseye."

All I did was get this to run in the shell.  More work needs to be done 
one it, but it stands as a demo for doing B/W sprite animation without 
resources.

It puts up a window with a framed Rect.  There are little happy faces 
bopping around randomly, boncing off walls and each other.  Ther are some 
black dots doing the same.  A bar down the Rect. center has a gate that 
opens on mouseDown and closes on mouseUp.  The idea is to open and close 
it at the right time so that all the "balls" wind up on one side of the bar.

-Ken-
----------------Cut to your Heart's content--------------------------------


#### BINHEX     mbar-clock-c.hqx   ****

Date: Wed, 21 Dec 1994 11:56:26 +0800 (SST)
From: Ueda Hajime <hajime@singnet.com.sg>
Subject: MBarClock Source

Here's MBarClock's source!
You can use all or part of it in your application.
If you made something, please send me a copy.


Enjoy,
Masafumi Ueda


#### TEXT       mbprintf-c.txt   ****

Date: Wed, 2 Dec 92 16:28:25 PST
From: macmod@SUMEX-AIM.Stanford.EDU (Info-Mac Moderator)

orrow.stanford.edu!stanford.edu!agate!ucbvax!hplabs!sdd.hp.com!elroy.j        pl.nasa.gov!usc!davidp 
From: davidp@calvin.usc.edu (David Peterson) 
Newsgroups: comp.sys.mac.programmer 
Subject: Just for you, an early Christmas present 
Message-Id: <1fj5ksINNo34@calvin.usc.edu> 
Date: 2 Dec 92 20:17:32 GMT 
Reply-To: davidp@usc.edu 
Organization: University of Southern California, Los Angeles, CA 
Lines: 99 
Nntp-Posting-Host: calvin.usc.edu 
Apparently-To: info-mac 
Resent-To: backmod
Resent-Date: Wed, 2 Dec 1992 16:28:22 PST
Resent-From: Info-Mac Moderator <macmod@sumex-aim.Stanford.EDU>




#### BINHEX     mega-source-150-nshell.hqx   ****

Date: Sun, 1 Jan 1995 09:36:13 -0800 (PST)
From: John Jensen <jjensen@kaiwan.com>
Subject: nShell v1.5.0 Mega Source

Source code is provided for the following nShell(tm) commands: ask, 
battery, beep, cat, chattr, cp, date, dec, delay, df, du, echo, eq, find, 
fss, gestalt, grep, head, hello, inc, launch, ls, man, match, mem, mkdir, 
mv, notify, odoc, ps, read, rm, sfget, sfput, shift, tail, unlock, wc, 
and yesno.
 
It is assumed that you have downloaded and installed the nShell 
application and its Programmer's Guide.  These packages are available 
from a number of on-line sources.
 
The nShell is a traditional scripting environment for the Apple 
Macintosh.  The shell is available in two forms. A light version, called 
nShell(tm), is freely distributable for non-commercial purposes. A second 
version, called nShell-Pro(tm), is available as a commercial product.  
Our goal is to make the shell environment available to as many users as 
possible, while providing serious users with the support and reliability 
of a full commercial product.
 
Contact: John Jensen
 
EMail: jjensen@kaiwan.com, jjens@eworld.com, or jjensen@aol.com
 
Mail: Newport Software Development, P.O. Box 1485, Newport Beach, CA 92659


#### BINHEX     menu-commands-library-as.hqx   ****

From: ai158@freenet.buffalo.edu (Matthew Ahrens)
Subject: [*] Menu Commands Script
Date: Mon, 2 May 1994 14:38:14 -0400


Please replace the previous copy of Menu Commands with this version.
some people had complained about the script asking them for an app which
they did not have. this version is saved as text, not complied, so that 
should not be a problem now. feel free to email any additional problems,
suggestions, thank-yous, etc.
 
 

#### BINHEX     menu-fixer-10-c.hqx   ****

From: f8dy@netaxs.netaxs.com (Mark Pilgrim)
Subject: Menu Fixer 1.0 (source code)
Date: Mon, 15 Nov 1993 11:03:20 -0500 (EST)

Menu Fixer is a programmer's tool which will examine all the MENU resources
in a file and report (and optionally fix) discrepancies between the MENU
resource ID and the menu's internal menu ID.  If your menus are showing up
scrambled or not showing up at all, try this first!

Menul Fixer is distributed under the GNU General Public License; this
archive contains complete THINK C 6.0.1 source code for the Menu Fixer
application, complete source code for an external application used to set
up the application's self-integrity checker, and notes for using the self-
integrity checker.  You may freely redistribute this package as a whole;
you may freely modify this application and re-distribute it under the GNU
General Public License.  See the file "GNU General Public License" in this
archive for details.

This code handles, among other things, events, menus, apple events, Gestalt
environment checking, hierarchical menus, dialogs, windows, off-screen
bitmaps, resource file management, and standard file dialogs.  None of
this is very well commented, but feel free to direct any questions to
f8dy@netaxs.com.

Menu Fixer 1.0 is copyright 1993, Mark Pilgrim, MerriMac Software Group.


#### BINHEX     menu-slide-11-p.hqx   ****

Date: Wed, 19 Oct 1994 15:27:34 +1000
From: Hugh.Fisher@anu.edu.au (Hugh Fisher)
Subject: dev/source - MenuSlide 1.1


  For the dev/src area

  This is a little application I wrote to test a user interface idea:
  that the menu bar should slide when you switch applications.
  Source code (THINK Pascal) and binary (it's very small) included.
  Please try it and let me know what you think.


#### BINHEX     micro-animation-demo-p.hqx   ****

From: Ingemar Ragnemalm <ingemar@lysator.liu.se>
Subject: MicroAnimationDemo (Pascal source)

This is a very simple sprite animation demo, written as a first intro to
GWorlds and offscreen drawing. Think or Metrowerks Pascal.

/Ingemar Ragnemalm


#### BINHEX     migo-software-library-p.hqx   ****

Date: Mon, 24 Apr 1995 13:11:35 +0000 (GMT)
From: Miguel Frias <l41467@ci.ist.utl.pt>
Subject: MGSW Library

Hi, just to send the new version of MGSW Library for Pascal programmers. 
Hope it gets there OK.

Thanks, 
Miguel.


#### BINHEX     missile-command-23p-p.hqx   ****

From: Ingemar Ragnemalm <ingemar@lysator.liu.se>
Date: Sun, 30 Apr 1995 12:09:27 +0200
Subject: Missile Command, old game, Pascal source-code

This is the old game Missile Command by RObert Munafo, from 1984. I've made
some small improvements, like sound and black background, but otherwise it
is just the same as it always was. I call it version 2.3 plus.


#### BINHEX     more-files-143.hqx   ****

From: (Jim Luther) JumpLong@aol.com
Subject: MoreFiles 1.4.3

MoreFiles is a collection of high-level routines written over the last couple
of years to answer File Manager questions developers have sent to Apple
Developer Technical Support.

The routines have been tested (but not stress-tested), documented, and
code-reviewed by Apple's Developer Technical Support.  This release fixes
several minor bugs.

MoreFiles provides: high-level and FSSpec style routines for parameter-block
only File Manager calls; useful utility routines that perform many common
File Manager related operations; a robust file copy routine; a recursive
directory copy routine; a catalog searching routines; high-level and FSSpec
style routines for Desktop Manager calls; routines for dealing with
pathnames; and a flexible directory iteration (scan) function.


#### BINHEX     morpion-100-p.hqx   ****

From: Peter N Lewis <peter@ncrpda.curtin.edu.au>
Subject: src/pascal - Morpion 1.0.0
Date: Fri, 3 Dec 1993 17:30:00 +0800

This is the Pascal source code for Morpion v1.0.0, a simple 
solitaire game, initially designed by Henri Lamiraux.  

The source code contains lots of interesting stuff:

Demonstrates the usefulness of building library routines (only
    three of the included source files are particular to Morpion).
Support for the core AppleEvents
Support for FMenus which make you menu locations independent
    of the code that implements them.
Supports for the TextToSpeech Manager.
Demonstrates OO techniques for implementing windows as objects.
Code for reading your own Version resource.
And lots of useful general purpose routines.

You can use this source code for any non-commercial purpose.

Hope it is useful to someone,
   Peter. <peter.lewis@info.curtin.edu.au>

Morpion v1.0.0 Copyright 1993 Peter N Lewis 


#### BINHEX     mouse-broken-101-c.hqx   ****

From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Mousebroken 1.0.1 (source code)
Date: Tue, 7 Dec 1993 00:16:40 -0500 (EST)

Mousebroken is a control panel which will give you greater control over your
mouse (or less control, depending on how you look at it).  It comes with 13
mouse modules, each designed to alter your mouse's behavior in a different
way.  New mouse modules can easily be designed and added to Mousebroken.  The
mouse modules in this archive are public domain; feel free to design your own!

The Mousebroken control panel is free and is distributed under the GNU
General Public License.  This archive contains complete THINK C 6.0.1 source
code and project files for the control panel.  This archive also contains
source code to 13 sample mouse modules and a blank module prototype (quite
well commented, too); these modules are public domain.  If you do not have FTP
access, e-mail the author for a copy of the control panel, the source code, or
a list of other programs by the same author.  The address is f8dy@netaxs.com.

Version 1.0.1 fixes a bug that caused the error dialog box to be displayed
incorrectly on black & white Macs.  This version of the control panel should
work on any Macintosh, under either system 6 or 7.  Some individual mouse
modules may have problems on systems with multiple monitors.  Please report
any bugs/comments/suggestions to f8dy@netaxs.com.

This code demonstrates the in's and out's of writing a control panel,
advanced file maintenance, INIT installation, preference file maintenance,
notification through the Notification Manager, VBL installation and removal,
and the correct way to access Quickdraw globals in a control panel.

Mousebroken 1.0.1 is copyright 1993, Mark Pilgrim, MerriMac Software Group.


#### BINHEX     move-to-shadow-135-as.hqx   ****

From: igorl@uiuc.edu (Igor Livshits)
Subject: Move to shadow 1.3.5; an AppleScript for Info-Mac archiving

I wrote this script to help me archive Info-Mac submissions from my Mac.
It's gone through about 6 months of daily testing, but I am sure there are still
a few errors lurking somewhere.

This script incorporates a log file, some text parsing and manipulation,
and control of Anarchie and Eudora. I am releasing this script mostly as an
example; I am sure only a handful may actually find use for it. For those that
wish to use this script as a vehicle to submit files to Info-Mac, please contact
me for more information. One item that is missing from this distribution is
the account and password file.


#### BINHEX     mpeg-audio-033-src.hqx   ****

From: franke1@llnl.gov (Norman Franke)
Subject: MPEG Audio for Mac Source

Due to popular demand, I've enclosed the source for my (old) port of maplay
to the Mac. This is the source to "MPEG Audio for Macintosh 0.3.3". I no
longer support this quick port, since my freeware SoundApp 2.1.1 supports
MPEG playback and conversion and works much better.

-Norman


#### TEXT       mpw-tool-appleevents-c.txt   ****

From: keith@taligent.com (Keith Rollin)
Subject: Re: Need sample code of MPW tool using Apple Events
Date: Fri, 18 Sep 1992 01:50:18 GMT

In article <1992Sep17.181819.23018@oakhill.sps.mot.com>,
tomc@oakhill.sps.mot.com (Tom Cunningham) wrote:
> 
> 
> Does anyone have some code for an MPW tool using Apple Events that
> they could send me?  In particular, I want to communicate with the
> Tool Server (e.g. run a script) via Apple Events from within an MPW
> tool.  Thanks.

I used the following in a tool I wrote to kill and restart the Finder. This
was in the hopes that shutting down the Finder would help speed up my long
compiles (it didn't). Remember that you have to have one of the MPW Shells
that comes with its High-Level Event Aware bit set:

void KillFinder()
{

#### BINHEX     msg-14-demo-c.hqx   ****

From: f8dy@netaxs.com (Mark Pilgrim)
Subject: MSG Demo 1.4 (source code)
Date: Sat, 23 Apr 1994 19:28:54 -0400 (EDT)

MSG Demo 1.4 is a collection of 67 graphic effects and 60 fades.  New
features: increased compatibility with 68000 machines, 32 new effects and
fades, deBinHex capability, and many technical improvements.  This archive
contains complete THINK C source code and project files.  Demo application
also available; check ftp sites or e-mail f8dy@netaxs.com.  Finger
f8dy@netaxs.com for complete program list.  Copyright (C) 1992-4, Mark
Pilgrim.  Please read enclosed file "GNU General Public License" for
licensing details.


#### BINHEX     multisession-104-c.hqx   ****

Date: Sat, 2 Oct 93 20:56:59 -0500
From: tomlaw@yar.cs.wisc.edu (Thomas R. Lawrence)
Subject: MultiSession 1.04 source code


Wow.  Source code to MultiSession.

PLEASE send all mail to tomlaw@world.std.com!


#### BINHEX     munge-image-120-p.hqx   ****

Date: Mon, 15 Aug 1994 20:17:38 +0800
From: Quinn <quinn@cs.uwa.edu.au>
Subject: source/pascal - MungeImage 1.2.0 Source



--========================_9114232==_
Content-Type: text/plain; charset="us-ascii"

Source to the latest release of the much malaigned, falsely accused, I
didn't do it, I wasn't even in the country at the time, MungeImage utility.

Share and Enjoy.

Quinn "The Eskimo!" <quinn@cs.uwa.edu.au>
Peter N Lewis <peter.lewis@info.curtin.edu.au>



--========================_9114232==_
Content-Type: application/mac-binhex40; name="MungeImage_Source_1.2.0.sit"
Content-Disposition: attachment; filename="MungeImage_Source_1.2.0.sit"


#### BINHEX     my-menv-notify-c.hqx   ****

From: (Kiselyov Oleg) oleg@ponder.csci.unt.edu
Subject: mymenv-notify - a classlib for a few Mac chores (source)

What:  utility C++ functions/classes for a few very common Mac chores

Highlights:
 - posting of synchronous _and_ asynchronous notifications
 - printf() in an alert box
 - "magic" conversion from a C to Pascal string
 - do_well() macro to make sure a "system call" went well
 - handling of mandatory Apple Events: OpenApplication,
   {Open|Print}Document, Quit:
   registering C++ classes as recipients of AppleEvents
   a trick of relaying AppleEvents to (abstract) C++ classes for processing
 - template of a generic drop box: an application that handles files dropped
   upon it
 - with the complete source and comments/explanations

Keywords: notification, AppleEvent, utility, registration, dropbox,
programming support, environment

Note: The environment is used in most of my Mac software (incl. the one
submitted to the Info-Mac)
Language: C++, CodeWarrior9
System: System 7.1 - 7.5.3, binaries are made for a PowerMac.
Comments to: oleg@ponder.csci.unt.edu, oleg@unt.edu
Version 2.0, June 1996

New in version 2.0
 - renamed myenv.* into mymenv.* to avoid name conflicts with my (UNIX) 
   C++ environment
 - renamed message()/_error() into alert()/_die() for the same reason:
   the former (declared in my advanced C++ i/o package) write into a
   SIOUX console; the latter functions display an alert
 - "magic" conversion from C to Pascal string
 - Handling of Mandatory Apple Events OpenApplication, {Open|Print}Document,
   Quit
 - Now works under CW9 (the previous version was compiled with Symantec
   C++ 6.0)


#### BINHEX     ncsa-mac-telnet-261d1-c.hqx   ****

From "mactel@ncsa.uiuc.edu (Mac Telnet)" Tue May 17 12:35:18 1994
Date: Tue, 17 May 94 14:29:40 CDT
From: mactel@ncsa.uiuc.edu (Mac Telnet)
Subject: Telnet2.6.1d1 Source Code


Several people have asked me for the NCSA Telnet 2.6 source code.  The source
code for 2.6 is not available.  However, the source code for 2.6.1d1 _is_
available.

Don't let the "d" scare you.  The primary difference between the 2.6.1d1 source
and the 2.6 source is the addition of some macros and a few small changes so
the source code will compile native for the PowerMacintosh.  The changes
are detailed in the readme file.


#### BINHEX     net-cache-resolver-09d6-c.hqx   ****

From: (Tetsuya Mizutori) mizutori@ai.rcast.u-tokyo.ac.jp
Subject: NetCacheResolver 0.9d6 source

The package includes the source code of NetCacheResolver
application, written in C language with Code Warrior DR 8.
NetCacheResolver application program is also bundled
into the NetCacheBack package. So, you do not need to
download this package if you have NetCacheBack package 
or you have little concern in Macintosh programming.

NetCacheResolver is a helper program to NetCacheBack,
which converts the 2.0's CCache log datatabe of
Netscape Navigator to that one of 1.1N's Cache log.
NetCacheResolver is an AppleScriptable application, 
such as responding and directly sending back the 
resolved records to NetCacheBack.

* Changes since 0.9d5, October 26, 1995
(1) Yesterday (oh, what is today?:-), I encountered an 
Unidentified Field Object in the CCache log database. This 
latent field, which I called "export", was an unexpected one, 
though I think most users may not have suffered from it. 
NetCacheResolver failed to resolve it properly. I fixed it.

Requires System 7.5 or later. Or, the scriptable Finder 
and other Scripting Additions.

NetCacheResolver is a freeware program. You can distribute 
it without any limitations nor permission.

See also:
 http://www.bekkoame.or.jp/~mizutori/software/catalog.html

I wish you enjoy it!

Mizutori Tetsuya, RCAST, Univ. of Tokyo, Japan
mizutori@ai.rcast.u-tokyo.ac.jp


#### BINHEX     net-rpg-106-p.hqx   ****

From: Erich Bratton <ebratton@sparc0a.cs.uiuc.edu>
Subject: [*] NetRPG 1.06 Source code
Date: Thu, 10 Nov 1994 13:28:47 -0600 (CST)


NetRPG is a mac-based TCP/IP internet chat server made specifically for 
playing role-playing games over the net.

Source is Think pascal 4.

--Erich




#### BINHEX     neuro-sim-101-cp.hqx   ****

From: (Timo Eloranta) timo.eloranta@ac.com
Subject: NeuroSim 1.0.1 Source Code

This is a maintenance release which replaces the initial 1.0 release.

Description

This package includes the full PowerPlant based C++ source code for NeuroSim - a
simple freeware neural net simulator for Macintosh. The code should be well
enough documented for most Mac programmers.

Requirements

*  CodeWarrior (the projects included are for CW9)
*  some sort of C++ skills...


#### BINHEX     new-watch-21-p.hqx   ****

From: Ingemar Ragnemalm <ingemar@lysator.liu.se>
Date: Sun, 30 Apr 1995 12:11:36 +0200
Subject: New Watch 2.1 (Pascal source)

Simple analog clock application, written in Think Pascal. This little code
snippet has been a "chain letter code" in alt.sources.mac.


#### BINHEX     nih-image-149-c.hqx   ****

From: salzman@Athena.MIT.EDU
Date: Wed, 31 Mar 93 21:57:15 -0500 
Subject: NIH-Image.149_source.hqx (8600 lines = 558907 bytes) 


#### BINHEX     no-exit.hqx   ****

From: "STUART KOHLER.....X2175" <STUARTK%NORWCH%NORWICH.BITNET@MITVMA.MIT.EDU>
Subject: NoExit.hqx
Date: Sat, 02 Jul 1994 20:50:44 -0500 (EST)

contains handlers preventing exit from or changes to stack without password.
****************************************************************************

#### BINHEX     nshell-pro-c.hqx   ****

Date: Mon, 5 Jun 1995 05:25:27 -0700 (PDT)
From: John Jensen <jjensen@kaiwan.com>
Subject: nShell-Pro Application Source

This package contains source code for the nShell-Pro application.  The
runtime files and user's guides are available seperately.
 
This is the first freeware release of nShell-Pro.  Until this date, June 
4 1995, it has been a commercial product.  We thank the early users of 
this product and hope that they will continue to benefit from the 
nShell.  Given that we do not plan any new versions of the product in the 
near future, we are releasing full source code to the application.  Feel 
free to tweak the shell to fit your preferences, or to include portions 
of it in your own products.
 
You may distribute copies of the nShell(tm) and nShell-Pro(tm) for any 
purpose.  Modified or derivative products based upon the nShell or its 
components should be clearly labeled as such.
 
Contact: John Jensen
EMail: jjensen@kaiwan.com, jjens@eworld.com, or jjensen@aol.com
Mail: Newport Software Development, P.O. Box 1485, Newport Beach, CA 92659


#### BINHEX     nshell-sample-c.hqx   ****

Date: Sun, 1 Jan 1995 14:23:28 -0800 (PST)
From: John Jensen <jjensen@kaiwan.com>
Subject: nShell v1.5.0 CodeWarrior Examples

Early releases of the nShell(tm) contained sample code for the Think C 
development environment only.  This package describes how to build nShell 
commands using CodeWarrior, as well as Think C.  Source code is included 
for the "hello", "date", and "delay" commands.  Conditional compilation 
allows commands to built under either environment.
 
A hypertext programmer's guide to the nShell is available separately.
 
You may distribute unmodified copies of the nShell(tm) for noncommercial 
purposes.  All other rights are reserved.  nShell-Pro(tm) is available as 
a commercial product, and may not be distributed without the express 
written consent of Newport Software Development.
 
nShell and nShell-Pro are trademarks of Newport Software Development.  
Apple and Macintosh are registered trademarks of Apple Computer, Inc.  
THINK C is a trademark of Symantec Corporation.  CodeWarrior is a 
trademark of Metrowerks, Inc.  Other brands and their products are 
trademarks of their respective holders.
 
Contact: John Jensen
 
EMail: jjensen@aol.com, jjensen@kaiwan.com, or jjens@eworld.com
 
Mail: Newport Software Development, P.O. Box 1485, Newport Beach, CA 92659


#### BINHEX     nshell-sample-p.hqx   ****

Date: Sun, 1 Jan 1995 14:25:44 -0800 (PST)
From: John Jensen <jjensen@kaiwan.com>
Subject: nShell v1.5.0 Pascal Examples

Early releases of the nShell(tm) contained sample code for the Think C 
development environment.  This package describes how to build nShell 
commands using Think Pascal.  Source code and project files are included 
for the "hello", "date", and "delay" commands.
 
A hypertext programmer's guide to the nShell is available separately.
 
You may distribute unmodified copies of the nShell(tm) for noncommercial 
purposes.  All other rights are reserved.  nShell-Pro(tm) is available as 
a commercial product, and may not be distributed without the express 
written consent of Newport Software Development.
 
nShell and nShell-Pro are trademarks of Newport Software Development.  
Apple and Macintosh are registered trademarks of Apple Computer, Inc.  
THINK C and Think Pascal are trademarks of Symantec Corporation.  Other 
brands and their products are trademarks of their respective holders.
 
Contact: John Jensen
 
EMail: jjensen@aol.com, jjensen@kaiwan.com, or jjens@eworld.com
 
Mail: Newport Software Development, P.O. Box 1485, Newport Beach, CA 92659


#### BINHEX     nstring-10b-cpp.hqx   ****

Date: Wed, 25 Jan 1995 10:21:35 +0100
From: francois@di.epfl.ch (Joel Francois)
Subject: NString 1.0 beta - A dynamic string class for C++ programmers (Development/Sources)

This is version 1.0 beta of NString, a very powerful dynamic string
class for C++ developers. Here's a brief summary of the main features
that NString offers:

*       Easy Assignment - NString objects can be handled almost like
        ints or floats
*       Very efficient string length measuring (as the length is stored
        in the object)
*       Access to single characters in the string through the [] operator
*       NString comparisons made easy via the use of standard operators
        (==, !=, <, >, ...)
*       Concatenation of NStrings through the '+' and '+=' operators
*       "Multiplication" of an NString with the '*' and '*=' operators
*       Operations for copying and cutting portions of an NString
*       An iterator, which calls a user-defined routine for every one
        of the string's characters
*       Upper / lowercase conversion routines
*       Very powerful context-based substring searches and tests
*       Standard C++ stream input / output operations through the
        '>>' and '<<' operators
*       Possibility to use NStrings as output string streams
        (i.e. to the left of the '<<' operator)
*       Highly optimized internal string handling
*       C++ exception support

NString is shareware.


#### BINHEX     nuntius-11-c.hqx   ****

Date: Mon, 6 Jul 92 15:41:20 +0200 
From: speck@ruc.dk (Peter Speck)
Subject: Nuntius1.1.src.sea.hqx 

*** SOURCE to: ***

Final version of Nuntius 1.1:
  Newsreader, requires system 7, and ~1200K.
  Written with MacApp3, C++ and the thread pkg from "d e v e l o p".

No documentation is available.

Report bugs etc to speck@dat.ruc.dk, not speck@frederik.ruc.dk

Some people have trouble with editing articles when they use
another editor besides TeachText. I'm working on this bug.

Peter Speck, speck@dat.ruc.dk



#### BINHEX     offscreen-toys-13-demo-p.hqx   ****

From: Ingemar Ragnemalm <ingemar@lysator.liu.se>
Subject: Offscreen Toys (Boost) 1.3 (Pascal source)

Offscreen Toys is a stand-alone sprite animation demo with full source code.
(Please don't confuse it with Offscreen Toys SAT, which looks the same but
uses Sprite Animation Toolkit.) I wrote this as a simple sprite demo, though
I got a bit over-ambitious, putting in a lot of not entirely trivial things.

You will find the following:
- The standard Mac event loop and event handling.
- Setting up GWorlds.
- Using CopyBits between GWorlds.
- Preloading graphics to GWorlds.
- Animation.
- Using BitMapToRegion to create a mask region for CopyBits.
- Collision detection.
- Collision handling.

Think and Metrowerks Pascal source-code.

/Ingemar Ragnemalm


#### TEXT       open-selection-pas.txt   ****

From: mxmora@unix.sri.com (Matthew Xavier Mora)
Subject: OpenSelection Code (pascal source) 
Date: 11 Sep 92 17:11:08 GMT 


Here's the code to have the finder open a control panel.
Just pass the control panel's fsspec to the openselection
function and it should open it. Actually I think it will
open any valid fsspec but I wouldn't bet on it. I haven't
stressed this code so there are probably some bugs in it.

Matt

--------------------------------------------
{ OpenSelection.p ported by Matthew Xavier Mora} 
{ ported from C.K. Han's openselection.c code  }
{ 09-11-92                                     }

unit openSelection; 
interface

#### BINHEX     osa-runner-cpp.hqx   ****

From: Andrew Nemeth <aznemeng@zeta.org.au>
Subject: AZN_OSARunner

Source code for 'OSA_Runner' follows:

-  C++ PPC native code
-  CW 7 compatible
-  Custom C++ class to 'hide' programmer from
   OSA interface.

OSA_Runner is a native PPC Macintosh application and source
code which shows how to call an AppleScript with/without 
variables from within an application.

These sources update those in my MacTech Article
"Execute OSA Scripts from Applications"
[ MacTech, October 1995 pp.45-52 ]

Andrew Nemeth
aznemeng@zeta.org.au
24 Oct 1995
Blue Mountains, Sydney Australia


#### BINHEX     ot-chat-302-sources.hqx   ****

From: ebratton@earthlink.net
Subject: OTChat 3.0.2 CW11 Pascal Source Code



OTChat is a basic TCP/IP chat server that runs on a Macintosh, similar
to IRC. To use it, simply run it and connect to your mac using telnet or
a MUD client.  A MUD client is better because it has a buffered input
line.

These are the full Codewarrior 11 pascal sources.

http://www.lextech.com/egb/otchat.html

--Erich




#### BINHEX     otcfm-68k-glue.hqx   ****

From: pbl@colba.net
Subject: OTCFM68KGlue abstract

OTCFM68KGlue is a library/code resource combination that allows 
applications or shared libraries executing in the CFM68K runtime 
environment to call Open Transport. It is designed for projects 
with the following requirements:

  - The project calls Open Transport.
  - The project is a shared library or an application that uses 
    shared libraries, or must otherwise take advantage of the 
    CFM runtime environment.
  - The project requires 68K support.
  - The project must run under versions of MacOS prior to 8.1.

The library is designed for application-level code (i.e., 
applications or shared libraries). Also, note that it requires 
minor source code changes.

Full source is included.





#### BINHEX     painted-black-091b-c.hqx   ****

From: figuiere@galaxie.int-evry.fr (Hubert Figuiere)
Subject: Painted Black 0.91� source kit

Hello everybody.

After request from few peoples, I'm proud to release today the "Painted
Black 0.91beta source Kit".
Huh, what is it ? It is just the _Copyrighted_ C sources of a small
screensaver I have written few month ago.
It is probably buggy, but it works and does not crash the machine !! Don't
worry, I'll update the application (but perhaps not the source, I'll see).
Include project for CodeWarrior 6 and 7 and original application.

Read the "read me" included.

Note to archivists :
        -this package should go to the /sources directory of the archive
        -the original Painted Black 0.91beta has already been posted.
Note to others :
        -feel free to have fun.

Hub


#### TEXT       path-from-fsspec-pas.txt   ****

From: mxmora@unix.sri.com (Matthew Xavier Mora)
Subject: PathName from FSSpec (pascal code) 
Date: 9 Sep 92 00:21:34 GMT 

I spent the long weekend cursing at the AppleEventManager
trying to get the finder to open a control panel. Anyway,
one of the things I discoverd was that the alias manager will
give you a path name if you ask for it. Since my program needed to
display the path name, I wrote a function that will return a full
path name in a handle (not in a str255 so you it won't crash with long 
path names) when you give it a fsspec. 

I also figured out how to get the finder to open a control panel.
You need to send an open selection event. I finally found an example that
worked and ported it to pascal. If you would like to see that code I can
post it here also. Its a direct copy of C.K Han's C code that is on the 
developers CD.

Here is the code:


#### BINHEX     patmos-11-c.hqx   ****

From: Jonathan.Kimmitt@camcon.co.uk (Jonathan Kimmitt)
Subject: Portable Patmos source update

This is an update to the source code for the kernel of portable patmos which
was archived recently. There were some problems with 68030 support which have
been addressed. You will need the previous archive also to do anything useful
with portable patmos (other than browse the source).

This software still only runs with VM off (sorry)

        Or if you are excessively lazy, you can send e-mail with your
feedback to
jrrk@camcon.co.uk 


#### BINHEX     pdb-to-pov-c.hqx   ****

Date: Fri, 25 Aug 1995 18:22:33 +1100
From: Richard Rothwell <chergr@LURE.LATROBE.EDU.AU>
Subject: Submission of MacPDB2POV

This file contains the source code for the Macintosh port of PDB2POV
 Copyright (C) 1992, 1993 Eric G. Suchanek, Ph.D.
Mac port: Copyright C 1995, all rights reserved, Richard G. Rothwell, Ph.D.

What does it do?
MacPDB2POV assists in the creation of photorealistic ball and 
stick images of molecules.
MacPDB2POV reads a protein data bank file and uses that to write a 
Persistence of Vision Ray (POVRay) ray tracer file. 
A MacMolecule format file or many others can be converted into the pdb format
using MacBabel. MacBabel is available on the net. 
POVRay renders the data in the pov format file to produce photorealistic images
of the molecule. POVRay is also available on the net.

How is it used?
To use this program with the existing example file, 
double click on MacPDB2POV and type the command "pdb2pov bucky bucky -h -s  -c
-b -d 0.9" 
onto the command line. The command can be copied from the document "Bucky
commands"
and pasted onto the command line. As long as the .pdb file exists in the same
folder as 
MacPDB2POV that file will be read and status information written to the screen. 
A .pov file will be written to disk. When the program finishes use the File menu
to quit.

The .pov file may have to be edited to fit the image into its window when you
render it.
The camera view point distance is probably the easiest thing to change, 
although there may be better things to alter.


This program was ported to the Mac by Richard Rothwell:
chergr@lure.latrobe.edu.au
But the program originates with:
 Eric G. Suchanek, Ph.D
His home page URL is:
        http://www.iac.net/~suchanek/pdb2povf/pdb2pov.html
Email:
suchanek@pg.com, suchanek@iac.net


#### BINHEX     peek-a-boo-112-ad-c.hqx   ****

From: joe@clipper.cb.att.com
Date: Thu, 28 Oct 93 21:46:32 EDT
Subject: PeekaBoo AD module 1.1.2


	Macfolks,

	PeekABoo version 1.1.2 AfterDark(tm) screensaver module.
	This version will run under Multimodule and Randomizer !!

	For those already with version 1.1.1, I'm submitting a patch
	to update that version. Download the patch instead - it's 
	smaller :) 

	Source code is included. This is FREE. Requires Color Quickdraw
	(+ System 7 ??) because it uses offscreen graphics worlds.


		- joe
	

#### BINHEX     pentominoes-20-c.hqx   ****

From: Mark Pilgrim <f8dy@netaxs.com>
Subject: Pentominoes 2.0 source code
Date: Sun, 30 Jul 1995 03:44:59 -0400 (EDT)

Pentominoes 2.0 is a game where you must place 12 pentomino pieces on a
game board without any overlap.  You may rotate and/or flip each piece, but
you may not place a piece more than once.  New version includes 3-D
graphics, a board editor, and over 90 boards.  Color or B/W.  Requires
system 7.0 or later.  Copyright (c) 1993-5, Mark Pilgrim; please read the
enclosed file "GNU General Public License" for licensing details.


#### BINHEX     persistence-of-vision-22.hqx   ****

From: jsc@ram.suny.geneseo.edu (Jon Christiansen)
Subject: Persisteance of Vision raytracer for the Mac from
Date: Wed, 23 Feb 1994 09:00:46 -0500



--========================_12795288==_
Content-Type: text/plain; charset="us-ascii"

Here is one of the files that Mark Elliott was looking for, I had no
problem downloading them (they were MacBinary II, according to what I saw)

FILE POVSRC.22.SIT



--========================_12795288==_
Content-Type: application/mac-binhex40; name="POVSRC.22.sit"
Content-Disposition: attachment; filename="POVSRC.22.sit"


#### BINHEX     pic-control-cdef.hqx   ****

From: catsgodot@pcisys.net (Grant Guenther)
Subject: picCDEF

This is a CDEF i would like to post on info-mac.  It is a picture control
definition that creates a 3-d button based on a picture and/or text.


#### BINHEX     pict-2-ascii-103-src.hqx   ****

From: pascal.lamboley@meteo.fr
Subject: Pict2Ascii-1.03-src.sit


   This is the source code for Pict2Ascii, available somewhere else
   in the archive as Pict2Ascii-FAT-1.03.sit.

   The only change since 1.02 is the support for scriptability.

   Pict2Ascii is a freeware than interactively generates texts that
   "look like" the pictures you feed it with, giving you control
   over various settings.

   The source code is heavily based on C++ and PowerPlant (CW10).
   I make it available as an exemple of what a "real" app can look
   like with PowerPlant, while small enough to be mastered easily.

   I don't claim it is well written or particularly clever, but hey,
   it works not too bad !

   This code is free, but not in the public domain. See the loose
   reuse conditions enclosed.




#### BINHEX     picttool.hqx   ****

From: Greg@ac44.com
Subject: PictTool

This was made from necessity for a project I was working on.

It is provided "AS IS".  I will not make any changes or modifications.

It allows you to "Dump" the contents of 'PICT' files into a human
readable form.  I needed it to decipher PICT Comments.  I hope it helps
you.  There used to be a utility called PICTDetective.  If I could have
found it, I wound not have created this.

Run the application, choose a PICT file, and wait.  It will dump the file
to the screen and to FILENAME.dump.  The dump file will be of type text.

This is shareware.  If it is useful, please E-Mail me.  If not, don't 
bother.  If it is really useful, send lots of money...

Thanx,

Greg Ames
Greg@ac44.com



#### BINHEX     pioneer-cursor-103.hqx   ****

From: Furnesss@northcentral.k12.ia.us
Subject: Pioneer Cursor v1.03


Pioneer Cursor v1.03

This is my third attempt for making shareware.  This will replace your normal
boring black cursor with this nice icon of the Pioneer� Symbol, CD Player
Company.  I hope you like these cursors I am making and have made in the past.

This should be compatible with any Mac, I have tested it on a variety of
different macs like Power Mac 5200, 5260 and also on LC 575-580's.  A couple of
my friends have also tried it on their machines. If you come accross any problems
hust let me know at FurnessS@northcentral.k12.ia.us

Disclaimer: If anything is to happen to your Mac while you are using
this�well�too bad�becuase you cannot blame me.  You use this at your own risk.  I
have not had any problems with it, so I doubt that you will either.

This is $3 shareware, I don't think that is too much to ask, I am going to need
every little dollar to keep making stuff���if you feel generous you may pay more
but I ask that you atleast please send the $3. You can send it to:

Sylvan J. Furness 409 Main Street, P.O. Box 51 Hanlontown, Iowa 50444

The only reason I am putting a little fee on this piece of software is because it
took alot of time to make.

Sylvan Furness




#### BINHEX     pix-maps-11.hqx   ****

From: tinyjohn@sk.sympatico.ca
Subject: PixMaps11.hqx



PixMap Libraries 1.1 (1.1 replaces 1.0)

Routines for drawing with 1, 2, 4, 8, 16 and 32 bit PixMaps.

    - routines for creating PixMap structures in memory.
    - rotate functions for rotating PixMap 90 degrees left and right,
    - flip functions for flipping PixMap data both vertically
    and horizontally,
    - a rotation routine for rotating a PixMap to any particular angle,
    - a routine for duplicating PixMaps,
    - transfer routines for transfering PixMap data to and from the
    PICT format,
    - a complete set of pixel oriented routines for retrieving and
        setting individual pixels in PixMap structures,
    - routines and a macro allowing you to quickly and easily draw
    into PixMaps,
    - routines for copying PixMap images to the current grafport,

C sources included, linkable library files, a source code example,
and documentation.

Copyright (C) 1997 by John Montbriand.  All Rights Reserved.
Permission hereby granted for public use.
Distribute freely in areas where the laws of copyright apply.
USE AT YOUR OWN RISK.
DO NOT DISTRIBUTE MODIFIED COPIES.




#### BINHEX     plain-text-121-c.hqx   ****

From: MPARK@UTMEM1.UTMEM.EDU
Subject: PlainText source + improved TE32K
Date: Thu, 03 Feb 1994 18:44:01 -0600 (CST)

Here is the complete source for PlainText, a Public Domain text
editor.

PlainText is a pure C implementation of ideas contained in the object
class library published in "Elements of C++ Macintosh Programming" by
Dan Weston. For many applications, implementing objects in C is a path
to elegant programming that avoids the lengthy compile times of some
C++ environments.

The text engine is modified from TE32K by Roy Wood and with
contributions from Patrick C. Beard, Lee A. Fyoc, Dave Platt, and
Teddy Slottow. In fact, the TE32K source files contained here can be
used as a substitute for TextEdit in any application needing to handle
files larger than 32K. Consult the documentation contained in the
original TE32K package archived on Info-Mac and elsewhere.

I have extensively modified TE32K in order to provide full arrow key
support, undo, MPW-like selection hiliting, support for double and
triple clicking, and more.

This is a self-extracting, binhexed, Compact Pro archive. I 
recommend archiving as PlainText-Source-1.21.sea.hqx.

Mel Park
University of Tennessee, Memphis
mpark@nb.utmem.edu
mpark@utmem1.utmem.edu

----------------------------------------------------------------

#### BINHEX     plugins-source.hqx   ****

From: Timothy Wall <twall@NO-SPAM.alum.mit.edu>
Subject: Plugin Filter source code


This is most of the source code to the Graphite plugin filter and
several others, in the hopes that it might be useful to someone.  It
makes extensive use of Metrowerks CodeWarrior PowerPlant, drag & drop,
graphics tablet support, and a bunch of other neat things.  The plugins
are based on a few core C++ classes and thus should be easily
extensible.

Permission of the author is required for any distributions.  Full
permission is granted for personal use; commercial users should contact
the author at twall@kagi.com.

Timothy Wall



#### BINHEX     popup-cdef-10b5-c.hqx   ****

From: ari@world.std.com (Ari I Halberstadt)
Subject: PopupCDEF-10b5.hqx
Date: Thu, 8 Dec 1994 14:59:40 -0500 (EST)

This is version 1.0b5 of Popup CDEF. It now works with color graphics 
ports and supports color menus and control color tables.

This CDEF implements a popup menu control. The CDEF handles display of 
the menu's title, the current selection, the one pixel drop shadow, and 
the triangle at the end of the menu. It also handles tracking of the 
mouse and checking and unchecking of the current item. It is compatible 
with systems 6.0.5 and 7.0.

The CDEF is modeled after the popup CDEF provided by Apple in System 7.0 
and described in "Inside Macintosh: Toolbox Essentials1. If you are 
already familiar with the system CDEF then using this CDEF will be very 
simple. Additional support is provided for type-in popup menus, for 
menus created dynamically by the application, and for color menus and 
controls.

This program is free, and can be used subject to the terms detailed in 
the file "Distribution". all source code in C and a THINK C v7.0 project 
file are included.


#### BINHEX     popup-menu-tester-100-c.hqx   ****

Date: Thu, 3 Nov 1994 21:53:18 -0800
From: celestin@olympus.net (Paul Celestin)
Subject: PopupMenu-Tester-100-c-src.sit.hqx



--========================_22825486==_
Content-Type: text/plain; charset="us-ascii"

I offer the following piece of code, which I hacked together tonight, in
order to get a better understanding of System 7 PopupMenus. It basically
displays a movable modal dialog with one popup menu and one button.
Selecting an item from the popup menu changes the title of the dialog to
echo that item. Clicking the Quit button exits the program. It's a
CodeWarrior project in C. Simple stuff, but maybe some people will find it
useful.



--========================_22825486==_
Content-Type: application/mac-binhex40; name="PopupMenu_Tester_1.0.0.sit"
Content-Disposition: attachment; filename="PopupMenu_Tester_1.0.0.sit"


#### BINHEX     pram-reader-12-p.hqx   ****

Date: Thu, 20 Jul 1995 21:23:13 +0200
From: wuttke@stein.teuto.de (M. Wuttke)
Subject: PRAM-Reader V1.2 Source Code

Hello,

attached to this letter is the source code for PRAM-Reader 1.2.
Please put it on your server(s).

Matthias Wuttke (wuttke@stein.teuto.de)


#### BINHEX     pram-save-restore-c.hqx   ****

From: oleg@ponder.csci.unt.edu (Kiselyov Oleg)
Subject: PRAM save/restore
Date: Wed, 9 Feb 94 09:35:36 -0600


What:	save the PRAM and extended PRAM and restore it on start-up
Contents:
	PRAM boss	- System extension (but can run as application
			  if the file type changed from INIT to APPL)
	PRAM boss.pi	- Project for the application part of PRAM boss
	PRAM save.cc	- Source code for the application part of PRAM boss
	PRAM reset.pi	- Project for the INIT resource that restores PRAM
	PRAM reset.c	- source code for the INIT resource
	PRAM guard.*	- application and the source code to set/restore
			  just the regular PRAM at any time
	The source code contains enough (I hope) comments to show what
	a particular piece of code does, as well as some tricks involved
Language: Symantec C/C++ 6.0 and built-in Assembler
System: System 7.x, but probably 6.x is OK, too. Tested on IIsi, IIci, 
	Quadras and Centres.
Note: the source code uses a "standard" environment, see myenv-notify.cpt
Comments to: oleg@ponder.csci.unt.edu, oleg@unt.edu
References: DiskParam (/info-mac/util/), SetXParam (from redback.cs.uwa.edu.au
	 (130.95.80.61) as "/ComSci/LabUtilities/SetXParam.sit")
Special note: for a map of the extended PRAM, read on.

Explanation:
PRAM boss is a better version of DiskParam. The PRAM boss is a bundle
of an application and an INIT resource. The application (when
double-clicked) just dumps the contents of the 20-byte regular PRAM
plus the contents of the entire Extended PRAM into a 'HEXA' resource.
The INIT resets the regular PRAM and (a part of) the extended PRAM to
the values saved into the 'HEXA' resource. The date/time is not
spoiled!  So, you can run the application on your computer and create
a HEXA resource with some 'standard' settings. Then you can change the
creator to INIT and drop the (now a 'System Extension') into the
Extensions folder. From that moment on, whenever you restart your Mac,
the PRAM and extended PRAM are reset to their "standard" values. You
can even delete the code resource with the Resource editor: that way
there is no way you can change the "standard" values. It's perfect for
computers in the Lab. The INIT that resets the PRAMs does NOT
patch the system, nor it takes any memory in the system heap,
etc. After it resets the PRAM, it quietly quits without leaving any
traces in the system. The distribution contains the compiled PRAM boss
in the guise of the System extension. To run it as an application,
change the file type to APPL.
PRAM guard is my early experiment, it works only with the regular
PRAM, but it's got a nice (I hope) user interface written in C++!

Map of the extended PRAM (for references)
	from the article posted in comp.sys.mac.{programmer,system,
hardware} with comments from ez015670@othello.ucdavis.edu, quinn@cs.uwa.edu.au,
wolfson@ll.mit.edu, and small corrections

			    Extended PRAM Map
Loc	Length		Related to
(hex)	(dec)

1	1		Used by a system program _InternalWait

8	4		Looks like the last 4 bytes of the regular PRAM
			(See IM, Vol II, OS Util)

10     16		Looks like the first 16 bytes of the regular PRAM
			(See IM, Vol II, OS Util)
			
76	1		Has something to do with the RAM disk size
78	4		Startup Disk info (apparently, SCSI id, or smth)

7C	2		System Beep. As was pointed out earlier, it's
			in fact an id (short int) of the corresponding 
			'snd ' resource in the System file.
			Accessed through the Sound control panel

7E	1		Used by a system program _InitProcMenu
7F	1		Apparently it has smth to do with the way windows
			and dialogs appear on the screen

80	2		Used by a system program _GetVideoDefault
			Apparently, some default video settings

82	6		Hilite Color, apparently in the RGB format.
			Setup through the Color control panel

8A	1		Bit field: Memory/cache control flags
	   1xxx xxxx	68040 Cache is OFF | Toggled through Cache control
	   0xxx xxxx	68040 Cache is ON  | panel
	   xxxx x1x1	32-bit addressing is ON (toggled through the Memory
			control panel)

AF	1		Has something to do with the RAM disk size

BD     33		Used (and set!) by some system programs in ROM,
DE	2		at addresses 8009d544 and 8009D73C. BTW, the beginning
			of the field at loc 0xBD looks like the name of a
			default AppleTalk zone 

E0	4		Network: contains info if AppleTalk is active
			and the selected network access (say, LocalTalk
			or EtherTalk). See Chooser and Network control panel

E4     12		Latitude/Longitude of the place the Mac is at
			Setup through the Map Control panel


ez015670@othello.ucdavis.edu also commented that

> One thing that you left out was the total power on hours is also in
> the xpram.  It is a 16 bit word.  That contains the total time the
> computer has been on in 5 minute intervals.

> Supposedly there is also some creation stuff in their to that tells
> when the machine was made, but I can not make sense of it.

------------------------------------------------------------------------

#### TEXT       preferences-c.txt   ****

From: Sproul@sproul.sproul.com (Mark Sproul)
Subject: Prefs file source code (C - long)
Date: 2 Oct 92 09:05:30 GMT


Several people asked for this source code.  As explained in the comments,
it came from Inside Mac Comm Toolbox and there is a lot of code dealing
just with the Comm Tool box setup.  It now handles the PREFERENCES
folder in the system folder properly.

I have done some additions to the code to make it more general and
usable as far as dealing with preferences.  Such as GET pref and SET
pref.  This code was all written and runs correctly with Think C 5.0.

Its been several months since I wrote this and was looking at it.
I may have forgotten to mention something, if you have any problems
let me know and I will post updates.

You need to define some things such as this:


#### BINHEX     prf-file-sdk-02.hqx   ****

From: ev-olle@nrm.se (Olle Israelsson)
Subject: PrfFileSDK 0.2

Hallo

I would like to submit 'PrfFileSDK0.2.sit.hqx'
It is sample codes for developers

This is the first public release of the PRF File SDK

Please read the documentation.

For any questions, please don't hesitate to contact the aythor

The PRF-file system is invented, created and 
produced by Olle Israelsson

PRF files, PRFViewer and PRF Tech Notes are
trademarks of Olle Israelsson
Copyright � 1997 Olle Israelsson
All rights reserved

The PRF-file system is distributed as FREE-WARE
For usage and distribution information, 
see PRF Tech Notes 5. Miscellany, 
Chapter '11. Licences and usage'

Olle


#### BINHEX     pro-tracker-asm.hqx   ****

From "jamal@gnu.ai.mit.edu (Jamal Hannah)" Wed Sep  8 03:00:20 1993
Date: Tue, 7 Sep 93 19:22:59 -0400 
        
To: info-mac@SUMEX-AIM.Stanford.EDU
From: jamal@gnu.ai.mit.edu (Jamal Hannah)
Subject: ProTracker-source.sit.hqx 
Resent-To: backmod
Resent-Date: Wed, 8 Sep 1993 1:45:56 PDT
Resent-From: Info-Mac Moderator <macmod@camis.Stanford.EDU>



--========================_6712356==_
Content-Type: text/plain; charset="us-ascii"

Please place this file on the info-mac FTP site, either in a source code
directory, or in info-mac/snd/util (or a directory for sound and music
format documentation).

-------
This is the 68000 assembler source code for the Amiga music sequencing/sound
track editor called "ProTracker", the source and images for versions 1.2 and
2.0 are included.  Hopefully it will help Macintosh programmers achive a better
understanding of the "MOD" Music file format that ProTracker uses, as well as
give ideas about writing sound track software.

The origional (LHARC) archive was found on FTP site wuarchive.wustl.edu in the
"aminet" section. (/systems/amiga/aminet/mus/edit/ptsource.lzh)

  - Jamal Hannah <jamal@gnu.ai.mit.edu>, 9/7/93



--========================_6712356==_
Content-Type: application/mac-binhex40; name="ProTracker-source.sit"


#### BINHEX     qt-movie-toolbox-11-c.hqx   ****

From: markf@post.QueensU.CA (Mark Fleming)
Subject: Updated source to MovieToolBox
Date: Sat, 12 Feb 1994 00:27:08 -0500



--========================_18342168==_
Content-Type: text/plain; charset="us-ascii"


QT Movie ToolBox V1.10, Freeware
        - Added Direction menu
  - Added background color option
  - Added option to view next preview image by click on preview window
  - Added option to display current preview step by holding down the option key.
  - Fix bug with open menu item being disabled after selecting Effect menu.
  - Cleaned up the code for allocating offscreen GWorlds
  - Cleaned up & Documented to code some more...

I included sample code for calling Adobe Premiere effect modules, you can
get the needed includes and file from the Adobe premiere 2.0 development
kit.

[Replaces as /info-mac/dev/src/qt-movie-toolbox-10-c.hqx; 60K]




--========================_18342168==_
Content-Type: application/mac-binhex40; name="QT_Movie_toolBox.src.sit"
Content-Disposition: attachment; filename="QT_Movie_toolBox.src.sit"


#### BINHEX     rebuild-projects-11-as.hqx   ****

From: malldrit@sfu.ca
Subject: Rebuild Projects - THINK C Development Script
Date: Thu, 23 Dec 1993 13:56:14 -0800


Rebuild Projects v1.1
by Mark Alldritt
author of Script Tools & Monitor

Rebuild Projects is a AppleScript script which is usefull if you use
THINK C 6.0.1+ to develop software involving a number of seperate THINK C
project files.  Rebuild Projects uses a parameter file to govern the order
and type of operations performed during the build process.

The parameter file can direct Rebuild Projects to compile certain projects,
move files, and empty folders.  Additionally, the script is simple enough
(less than 150 lines) that you can add your own verbs to the parameter file
syntax to extend the script into areas you might find usefull.

Rebuild Projects requires AppleScript 1.0 or later, and Script Tools 1.3
or later.  Script Tools is available from the Info-Mac archives and other
sites.

Package Contents:

	Rebuild Projects
	Read Me First (this text)
	Example Param File
	
Rebuild Project is freeware.  There are no restritions on use or
distribution.


#### BINHEX     region-to-rectangles-c.hqx   ****

From: Hugh Fisher <Hugh.Fisher@cs.anu.edu.au>
Subject: source/C - RegionToRectangles
Date: Mon, 21 Feb 1994 13:29:32 +1100 (EST)


This is C source code for breaking down a region into
rectangles, plus notes and a sample program to 
demonstrate it in action.

Comments welcome: send to Hugh.Fisher@anu.edu.au

------------Cut here-----------------

#### TEXT       register-safe-fat-r.txt   ****

Date: Mon, 6 Mar 1995 15:36:53 -0800 (PST)
From: Chris Larson <larson@BASE.CS.UCLA.EDU>
Subject: RegisterSafeFat.cpt.hqx : Code resource Rez template

Attached is the Rez source for a template, similar to the 'sdes' 
template, which allows the construction of safe, fat code resoruces with 
register-based calling conventions.

Moderators:
    This probably belongs in dev/src.
    Feel free to include this on any CD you see fit.

--Chris
Chris Larson -- Amateur Macintosh Geek, CoBase Research Assistant
Internet: larson@kingston.cs.ucla.edu  | Insert Disclaimer Here

#include "MixedMode.r"

/****************


#### BINHEX     res-compare-patcher-10-c.hqx   ****

Date: Fri, 25 Aug 1995 19:05:23 +1000 (EST)
From: Victor Tan <victort@extro.ucc.su.OZ.AU>
Subject: ResComparePatcher 1.0 - use ResCompare to patch fat apps!

Hello there everyone,

this is ResComparePatcher.c 1.0, the source code for a code
resource that is to be added to a ResCompare 4.0.3 patcher to
make it copy or patch a data fork (specifically, a PowerPC app).
In other words...

This patch allows you to use ResCompare to create patches for
"fat" (68K and PowerPC) applications.

Those of you with WWW access may prefer to get this from:

http://www.usyd.edu.au/~victort/homepage.html


Freeware.

Enjoy,

Vincent.


#### BINHEX     rfc-1123-822-date-formatter-c.hqx   ****

Date: Fri, 7 Oct 1994 15:03:45 -0500
From: resnick@uiuc.edu (Pete Resnick)
Subject: RFC 1123 (822) date formatter (C source code)



--========================_12660869==_
Content-Type: text/plain; charset="us-ascii"

This archive contains C source code and an associated resource file for
functions that convert between the ASCII version of Internet standard
format (RFC 822 and 1123) date strings and the Macintosh time format
(number of seconds since January 1, 1904). It is a little more lenient in
strings that it accepts, in that it will convert some time zone specifiers
that are not allowed in RFC 1123 (but are used by some broken mail
systems) instead of just ignoring them. But the strings it produces are
strict RFC 1123 date format strings.

I wrote this mainly as an exercise to try out some of the International
Utilities like StringToDate, StringToTime, ExtendedToString, and
StringToExtended. It is certainly not the fastest code to do this, but the
code size is pretty small, and it's a nice educational piece of code.

If you use this code in a project, please remember to give me proper
credit in the documentation or splash screen.

pr
--
Pete Resnick - resnick@uiuc.edu



--========================_12660869==_
Content-Type: application/mac-binhex40; name="RFC_1123_Date.sit"
Content-Disposition: attachment; filename="RFC_1123_Date.sit"


#### BINHEX     roidz-09a-src.hqx   ****

From: "Pigeon ^_^" <dethpigeon@hotmail.com>
Subject: Roidz 0.9a Source Code


Roidz is a small and cool game made with Pascal. There is thorough
documentation included in the sit files.



#### BINHEX     rotate-ppc-01d1-c.hqx   ****

From: craig@raru.adelaide.edu.au (Craig Kloeden)
Subject: Program for the Archives
Date: Sun, 12 Jun 1994 15:22:52 +0930



--========================_7525596==_
Content-Type: text/plain; charset="us-ascii"





--========================_7525596==_
Content-Type: text/plain; name="RotatePPC0.1d1.cpt.hqx"; charset="us-ascii"
Content-Disposition: attachment; filename="RotatePPC0.1d1.cpt.hqx"

RotatePPC 0.1d1
===============

This is a Power Macintosh only program that reads a set of
3-dimensional points and lines and plots them in a window.
The image can then be rotated with the mouse in real time.

The provided source code demonstates a basic PPC C program
that can handle the required apple events, set up and use
an offscreen GWorld, get a file using StandardFile and
read that file with standard C routines.

The resource file contains code that will put up an alert
on non-PPC machines and quit.

The project file is for the Metrowerks PPC C DR/3 compiler.

Craig Kloeden <craig@raru.adelaide.edu.au>

---


#### BINHEX     rotation-c.hqx   ****

From: kenlong@netcom.com (Ken Long)
Subject: Rotation; a 3D graphics rotation program
Date: Fri, 3 Jun 1994 13:35:29 -0500



--========================_14370816==_
Content-Type: text/plain; charset="us-ascii"

Howdy, MacGifters!

A 1986, 3D graphics rotation program, which I updated.  Draws pseudo
controls after some data strings and countdown (alternative to a progress
bar) and the default draw.  The drawing contines in a loop - just keeps
drawing in a circle.  There's another vertex table in the source that
changes overall perspective.

Not the best coded application in the world, but it's kinda cool and it runs.

-Ken-



--========================_14370816==_
Content-Type: application/mac-binhex40; name="Rotation-c.sit"
Content-Disposition: attachment; filename="Rotation-c.sit"


#### BINHEX     safe-alert-10-c.hqx   ****

From: Todd_Clements@hmc.edu (Todd Clements)
Subject: SafeAlert.c - C source code for automatic background/foreground

SafeAlert is a set of routines that is meant to reduce the worry involved
in attempting to display modal alerts while your application is in the
background.  Instead of using functions such as StopAlert, NoteAlert, or
CautionAlert, you can use calls to SafeAlert.

SafeAlert automatically determines whether your application is in the
foreground, and based on this (and some other preferences which are all
programmer-settable) information can do one or all of the following:
     o Display a Notification Manager notice if you are not the foreground
       application
     o Display a blinking icon of your application in the application menu
     o Display a diamond next to your application
     o Display a modal or movable modal alert
         o Display an alert from dynamic or resource-based information
     o Automatically remove the alert after a specified period of time

Author: Todd Clements (todd@kagi.com or Todd_Clements@hmc.edu)

Release: 1.0, December 27, 1996


#### BINHEX     sample-ldefs-20.hqx   ****

Date: Tue, 27 Jun 1995 18:49:11 -0400
From: Matt Slot <fprefect@engin.umich.edu>
Subject: Sample LDEFs + Source

Enclosed are several LDEF binaries and source code examples. The
commenting is minimal, but so is the functionality in an LDEF. I think
that examination should reveal what you need to know. Use the LDEF source
to write your own, or just use the compiled resources for your app.

Changes:
        * The HiliteMode problem was one that has plagued me ever since
          I started using a custom MacHeaders file. I have changed the
          cell hiliting code to use accessor functions.
        * Incorrect management of the Handle states is fixed. The original
          code incorrectly initialized their HState fields, and would call
          SetHState() with bad data (it crashed only sparingly). This bug
          was a carryover from the original LDEF by Steve Falkenberg, which 
          my code was based on.
        * Fixed the documentation and updated the projects to SC7.04
          
Share and Enjoy...
Matt Slot, fprefect@umich.edu - 6/27/95


#### BINHEX     sample-scsi-code.hqx   ****

From: david@CS.UCLA.EDU (David Dantowitz)
Subject: Sample SCSI code
Date: Sat, 23 Apr 94 10:56:30 PDT

Someone recently requested sample SCSI code.  This was pulled from 
AppleLink two years ago...

Here is a Sample SCSI routine found on AppleLink from D0430 that was
posted a while back.  The library pointer posted for the Atari ST has
lots of useful info, but you'll have to integrate it with the SCSI
Manager (see the code below).



#### BINHEX     screen-flip-15-ad-c.hqx   ****

From: leo@cp.tn.tudelft.nl (Leo Breebaart)
Subject: ScreenFlip 1.5 Src [Screensaver Module source code]

This is the fully documented (and free) CodeWarrior 7 C source code for
ScreenFlip 1.5, a module I wrote for After Dark, Darkside of the Mac,
and other AD-compatible screensavers.

ScreenFlip repeatedly flips your screen's contents horizontally and
vertically.

This code can help you get started on writing your own screensaver
modules; it also illustrates how to use GWorlds, how to create an
animated After Dark about box, and how to create a FAT module.

Leo Breebaart  (leo@cp.tn.tudelft.nl)


#### BINHEX     scroll-c.hqx   ****

From: kenlong@netcom.com (Ken Long)
Subject: ScrollSource; scrolling lists w/out the List Manager (source)
Date: Fri, 3 Jun 1994 13:35:17 -0500



--========================_14370816==_
Content-Type: text/plain; charset="us-ascii"

Howdy, MacGifters!

A 1986 Keith Lambert demo, I updated,  of scrolling a list in a dialog, and
selectability, without using the list manager.

-Ken-



--========================_14370816==_
Content-Type: application/mac-binhex40; name="SCROLLSOURCE.sit"
Content-Disposition: attachment; filename="SCROLLSOURCE.sit"


#### BINHEX     seer.hqx   ****

Date: Wed, 20 Oct 1993 14:15:21 -0400 (EDT)
From: Aaron Wohl <aw0g+@andrew.cmu.edu>
Subject: seer / localtalk / records all packets

Seer records all packets on localtalk.  It is not
32 bit clean.   Source and object code is supplied.

The code is really bad but it works.
by Aaron Wohl, aw0g+@andrew.cmu.edu

For a much better example of how to write an
INIT/CDEV/DRVR see softkiss by the same author.


#### BINHEX     send-to-back-source.hqx   ****

From: ferris@proaxis.com
Subject: SendToBack FKEY 1.0 Source


Full C and Pascal source code to SendToBack FKEY 1.0.

SendToBack is an FKEY that changes the ordering of windows by sending the 
active (front) window behind any others. This can very handy for flipping 
through windows, or just to get the front window quickly out of the way 
without closing it. 

Requires: THINK C 7.04 or THINK Pascal 4.02

Freeware.

Seth Hill -- seth@kagi.com
http://www.proaxis.com/~ferris/



#### BINHEX     sf-get-folder-p-pas.hqx   ****

Date: Mon, 11 Jan 1993 13:51:59 +0800 
From: Peter N Lewis <peter@cujo.curtin.edu.au>
Subject: /source/pascal/SFGetFolderP.hqx 


SFGetFolderP, Pascal version

This is a pascal version of  Ken Kirksey's <kkirksey1@aol.com>, 
SFGetFolder, which allows the user to select a folder following 
Apple's HI guidelines.

I'm not the author, I just converted it to Pascal.  The 
documentation is unchanged from Ken's, but I'm sure you can figure
it out.

Have Fun,
   Peter. <peter@cujo.curtin.edu.au>


#### BINHEX     show-init-icon-101-c.hqx   ****

From: pottier@clipper.ens.fr (Francois Pottier)
Subject: ShowInitIcon 1.0.1 - displaying INIT icons
Date: Sat, 3 Jun 1995 15:31:16 +0200 (MET DST)

After some electronic discussion, Peter Lewis, Jim Walker and
I agreed upon this code which seems a good standard to display
INIT icons at startup time.

Features:
 - System 6 compatible
 - Simple C and Pascal source code provided
 - Standalone code resource provided (optional)

New in version 1.0.1:
 - MPW C compatible


#### BINHEX     shutdown-fade-10-c.hqx   ****

From: f8dy@netaxs.netaxs.com (Mark Pilgrim)
Subject: Shutdown Fade 1.0 (source code)
Date: Fri, 19 Nov 1993 14:48:22 -0500 (EST)

Shutdown Fade will cause your Macintosh to fade all attached screens to black
every time it shuts down.  This INIT is free and is distributed under the GNU
General Public License; this archive contains complete THINK C 6.0.1 source
code and project files for the INIT.  If you do not have FTP access, e-mail
the author for a copy of the INIT, the source code, or a list of other
programs by the same author.  The address is f8dy@netaxs.com.
 
This code demonstrates the basics of INIT initialization and loading, 
shutdown procedures, and advanced gamma work. This code will only work on
monitors with gamma -- the Mac II line, and any color Mac with a non-built-in
monitor.  (It has not been tested on a Color Classic; if anyone has one and
feels like testing, please let me know if it works.)  Please report any
bugs/comments/suggestions to f8dy@netaxs.com.
 
Shutdown Fade 1.0 is copyright 1993, Mark Pilgrim, MerriMac Software Group.
 

#### BINHEX     shutdown-fx-21-c.hqx   ****

From: f8dy@netaxs.com
Subject: Shutdown FX 2.1 (source code)
Date: Thu, 14 Jul 1994 21:47:25 -0400 (EDT)

Shutdown FX 2.1 is a fun little software package which will fade your
screen to black on restart and/or shutdown with one of over 60 graphic
effects.  This package includes complete THINK C 7 source code, project
files, and resource files for all components of the Shutdown FX package:
system extension, startup application, control application, Gestalt
function, shutdown procedure, Notification Manager response procedure,
and all 67 fade modules.  (Relax, I didn't include 67 project files.)

Since fades are stored as external modules (each in its own file), other
programmers can easily create their own fades and add to their collection.
See the Shutdown FX control application help section ("tech talk" page)
for more details, or read about it yourself in TEXT 613 in sfx.<pi>.rsrc.

This version fixes a bug in version 2.0.1 which could cause crashes on
very old machines, increases the number of fades to 67, and makes several
minor cosmetic improvements in the control application.

The compiled, ready-to-use files are available; check ftp sites or e-mail
f8dy@netaxs.com.  Finger f8dy@netaxs.com for complete program list.
Copyright (C) 1993-4, Mark Pilgrim.  Please read enclosed file "GNU General
Public License" for licensing details.


#### BINHEX     shutter-10-src-c.hqx   ****

From: (Ross Younger) RossY@gwcit.demon.co.uk

Subject: Shutter 1.0 (to archive)



Attached is "Shutter", a freeware prog I wrote initially as a teaching

exercise. The full source code is included, so it would probably belong in

"Developers" on the mac archive.




#### BINHEX     simple-breakout-src-updt-p.hqx   ****

From: ani@NMSU.Edu
Subject: simple-breakout-source-p

Attached is Pascal code as well as resources to create a breakout game.
Though not all that complex, it still uses several techniques that can
be used to make such a thing.  The code will compile easily under Think
Pascal, and not all that much effort is required to force it to compile
under Codewarrior.  Please freely distribute this code in any way; it 
may be used for any purpose.  Send all questions/whatever to:
ani@atlas.nmsu.edu


#### TEXT       simple-save-pict-p.txt   ****

Date: Tue, 15 Nov 1994 19:02:18 -0800
From: derekb@OREGON.UOREGON.EDU (Derek Boonstra)
Subject: Submission



--========================_6153076==_
Content-Type: text/plain; charset="us-ascii"

'SimpleSavePict-pas.txt' is a Unit written in Think Pascal to save Gworlds
or  current active windows as a file of PICT format.

I'm hoping that it will be placed in /info-mac/dev/source.

Thankyou,



--========================_6153076==_
Content-Type: text/plain; name="SimpleSavePict-pas.txt"; charset="us-ascii"

#### TEXT       simplify-list-manager-pas.txt   ****

From: kurisuto@BACH.UDEL.EDU ("Sean J. Crist")
Subject: More free code: Simplifying the List Manager 
Date: 18 Sep 92 03:33:13 GMT 


     The following code, once again, is nothing particularly glamorous; it
simply makes it easier to use the List Manager to create and manage lists
of strings.  One of the most common uses for the List Manager is
scrollable, one-dimensional, fixed-size
lists of strings (as in SFGetFile, SFPutFile).  The List Manager is good
for creating all kinds of lists (such as lists of icons), but a lot of
this functionality is a hassle for programmers who only need a simple list
of strings.
     The code below allows you create and dispose of lists of strings.  It
allows you to add, rename, and remove elements in the list, and handles
mouse clicks and update events.  It also keeps the lists in alphabetical
order.
     I remember having a lot of trouble learning how to call the List
Manager properly; I hope that this code helps somebody else.


#### TEXT       sitcomm-login-as.txt   ****

From: harrym@netcom.com (Harry Myhre)
Subject: SITcomm AppleScript
Date: Tue, 7 Dec 1993 18:13:15 -0800 (PST)

Language: AppleScript 1.0
Author: Harry Myhre <harrym@netcom.com>
Date Written: Tue, Dec 7, 1993
Purpose: Start SITcomm, logon to Netcom, get into dl directory, 
			ask user what to do next.

tell application "SITcomm"
	activate
	Connect "Netcom" -- dial into Netcom
	Wait For Text "etcom" -- last part of command prompt
	Send Text "go ~" -- first, go to home dir
	Send Text return
	Send Text "go dl" -- go to my download dir
	Send Text return
end tell


#### BINHEX     sleep-deprivation-11-c.hqx   ****

From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Sleep Deprivation 1.1 (source code)
Date: Wed, 20 Apr 1994 15:06:47 -0400 (EDT)

Sleep Deprivation 1.1 clears the screen with a cool graphic effect every
time you put your Mac to sleep.  Version 1.1 adds 42 new effects, for a
total of 50.  This archive contains complete C source code and related
project files.  INIT also available; check ftp sites or e-mail
f8dy@netaxs.com.  Finger f8dy@netaxs.com for complete program list.
Copyright (C) 1993-4, Mark Pilgrim.  Please read enclosed file "GNU
General Public License" for licensing details.  Requires a Macintosh
that can go to sleep (Powerbook, Duo, etc).


#### BINHEX     smiley-face-cursor-107.hqx   ****

From: Furnesss@northcentral.k12.ia.us
Subject: Smiley Cursor v1.07


Smiley Cursor v1.07

This is my seventh attempt for making shareware.  This will replace your normal
boring black cursor with this nice icon of a smiley face.  I hope you like these
cursors I am making and have made in the past.

This should be compatible with any Mac, I have tested it on a variety of
different macs like Power Mac 5200, 5260 and also on LC 575-580's.  A couple of
my friends have also tried it on their machines. If you come accross any problems
hust let me know at FurnessS@northcentral.k12.ia.us

Disclaimer: If anything is to happen to your Mac while you are using
this�well�too bad�becuase you cannot blame me.  You use this at your own risk.  I
have not had any problems with it, so I doubt that you will either.

This is $3 shareware, I don't think that is too much to ask, I am going to need
every little dollar to keep making stuff���if you feel generous you may pay more
but I ask that you atleast please send the $3. You can send it to:

Sylvan J. Furness 409 Main Street, P.O. Box 51 Hanlontown, Iowa 50444

Sylvan Furness



#### BINHEX     sound-at-random-c.hqx   ****

Date: Wed, 3 Nov 93 11:42:50 -0600
From: oleg@ponder.csci.unt.edu (Kiselyov Oleg)
Subject: sound-at-random.cpt - (source & bin) pick a sound at random and yell it


What: pick a sound at random and play it
Language: Symantec C++ 6.0
Note: Good (I hope) example of treating File and Drive managers as C++ objects
Note: Good as a startup program.
Note: needs standard environment, see myenv-notify.cpt
Note: sounds themselves are _not_ included, get your own
System: System 7.x, 32-bit clean
Contents:
	RandomSound.cc	- source code (commented)
	vRandomSound.cc - verification program
	RandomSound.pi	- Symantec C++ project
	RandomSound	- application itself. 32-bit clean, System 7
Comments to: oleg@ponder.csci.unt.edu, oleg@unt.edu

Explanation:
This is a whimsy set of functions that lets one play a sound
picked at random from the sound folder. The sound folder is
assumed to be a folder named "Sounds" in the System folder.
[Note, reading STR resource mentioned in the comments is not implemented yet]

------------------------------------------------------------------------

#### BINHEX     source-tools.hqx   ****

From: (Jeff Quade) jquade@bigfoot.com
Subject:  Source Tools 1.0

Source Tools - A Macintosh utility for programmers. Many features do not
work as this program was never completed. No documentation available. Use
at your own risk. Written by Quade Publishing (Jeff Quade). Freeware.


#### BINHEX     speech-manager-explorer.hqx   ****

From: Alexander W. Kourakos <kourakos@cardinal.ncsc.org>
Subject: source/c - Speech Manager demo program
Date: Wed, 18 Aug 93 13:09:18 EDT
Organization: North Carolina Supercomputing Center

   This is a quick little program I hacked together the day I FTP'd
the Speech Manager. Lets you play with voices, set pitch and rate,
etc. Written in THINK C 6.0.

   Archived with StuffIt. Should work on any Mac that can use the
Speech Manager.

----------------------

#### BINHEX     speech-unit-p.hqx   ****

From "PAUL M SHELDON <psheldon@utdallas.edu>" Thu Sep  2 10:50:08 1993
Date: Thu, 2 Sep 1993 10:23:13 -0500
From: PAUL M SHELDON <psheldon@utdallas.edu>
Subject: my speech object (5 hours small unit, I'm getting better)

--1426085571-978700603-746985779:#3021
Content-Type: TEXT/PLAIN; charset=US-ASCII

    I didn't have help in c translation to pascal from the kid I mentor, PJ
Traue, this time, so there are definite guesses in pascal meaning of c. 
    In this archived submission are four mpw text files. I have
included interface and implementation of the speech unit, my old code segment
that doesn't use the unit and a new code segment which does.
    I noted that the new code segment that uses the unit must also have a
uses speech or it won't know the meaning of a type, SpeechChannel. That's
odd, since I tried not having uses all the way up the hierarchy of calling
routines and the object oriented pascal language only caught me there. I am
curious as to when I can get away with not using uses items; I am curious
as to how much is, as they say in modula language, hidden import.
    This speech unit works, but may have mistakes in particular in the
Gestalt manager call pascal interpretation of the c code written up in the
apple docviewer document on speech manager. Maybe the kid I mentor will
correct my translation. Maybe someone out there will. I also have Halts to
handle os errors. I think that is sort of lame, because I don't insure that
all objects are free'd with such a handling. Someone more savvy than could
improve on this, for sure.
    I did several experiments with the unit. You will see my earlier (working)
experiments commented out. I wanted to see what a Boris with a Brenda echo
would sound like. It sounded like an incompetant translator, not like an
echo. There was a time delay, even when I didn't put it there from the
speech processing. A very short time for the Brenda echo, but noticeable.
If you use the same speaker object to speak concurrently, it cuts its own
speech off after an interceded delay. Evidentally, to have concurrent
speech, your program must seize a different channel.
What you can do with this:
    With this as a unit in  a text editor, you should be able to select
things you want to have the mac speak. 
    When you use this unit, you may discover a greater wisdom that I found
making it and improve upon it. For your courage, before I tried making
this primative thing, I thought it would take more than twice as long as
it did. It didn't, even though I was exhausted from other things I did
that day!
    With this submission, you can get the feel of a boundary on how
long it takes pascal procedural code to be turned into a prototype unit
for an object. 

--1426085571-978700603-746985779:#3021
Content-Type: APPLICATION/octet-stream; name="speechunitex.hqx"
Content-ID: <Pine.3.07.9309021159.A3021@sioux.utdallas.edu>
Content-Description: 


#### BINHEX     speedy-mouse-12-c.hqx   ****

From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Speedy Mouse 1.2 (source code)
Date: Sat, 18 Dec 1993 00:13:34 -0500 (EST)

Speedy Mouse is a fun little INIT which will cause your mouse to move
twice as fast as it normally does.  This INIT is free and is distributed under
the GNU General Public License; this archive contains complete THINK C 6.0.1
source code and project files for the INIT.  If you do not have FTP access,
e-mail the author for a copy of the INIT, the source code, or a list of other
programs by the same author.  The address is f8dy@netaxs.com.

Changes in version 1.2: the mouse no longer bounces off the edge of the
screen, and the cursor disappears correctly now while you are typing.  Also,
the mouse will move at normal speed while the caps lock is down.

This code demonstrates the basics of writing and installing a VBL, and
manipulating undocumented low-memory globals. I used to say that this code
would work on any Mac, but that has proved not to be true.  If you have any
compatibility problems, please report them to me at f8dy@netaxs.com.  Many
helpful users all over the world have provided feedback that has helped me
advance Speedy Mouse this far.

Speedy Mouse 1.2 is copyright 1993, Mark Pilgrim, MerriMac Software Group.


#### BINHEX     spin-cursor-101-c.hqx   ****

Date: Fri, 11 Sep 92 16:52:32 GMT-0500
From: rudman@mondo.engin.umich.edu
Subject: [*] SpinCursor Library 1.01


NOTICE: This should replace the older version of the library

This is the SpinCursor library, AGAIN ... UGH.

Some of you may have already noticed there was no protection against
installing more than once, and so the cursor jumped all over the place
before finally dying a horribly yucky death.  I installed a global variable
called gCursInstalled, and this will fix it; now you can call
BeginSpinning() and StopSpinning() without worry as to what will happen.

Some notes for first-time users (read: people unaware of what a VBL task
can do)

o  VBL-based spinning cursors will probably continue to spin even after the
   Macintosh has crashed.  During true Mac crashes, however, the cursor
will
   not MOVE anywhere, it will just spin.  Good? Bad? You be the judge.

o  It would be a nice gesture for you to call StopSpinning() if you receive
   a suspend event, and then BeginSpinning() (if necessary) when you
receive
   the resume event.  Otherwise, you may be "giving the gift of spinning
love"
   to other processes; this is defined in the dictionary as "NOT NICE".

o  Before you allow a user to quit your program, you should issue a
   StopSpinning() just to be on the safe side.  Otherwise, the VBL will
   remain in memory, and it will attempt to JMP to a CODE which is no
longer
   available. Can we say "crash" boys and girls? I knew you could...

o  Some people are very, very accute, and they have noticed some small
flicker
   in the spinning cursors.  This is because the calls to SetCursor are NOT
   always called in sync with the actual monitor vertical retrace.  I will
be
   working on this; in the mean time, it's just a SMALL flicker, more
noticeable
   on machines with nice big 16" screens.

o  Okay, here's the scoop: SetCursor DOES NOT MOVE MEMORY under these
   conditions. SetCCursor MIGHT, however. Nobody at Apple was willing to
try
   and put a color example into the new Inside Macintosh line of books, so
I
   thought OK, I will.  According to someone who sounds like they know, the
   color cursor call has a 0.1% chance of failing.  I say, Hell...   I lock
   everything and do the best job I can of keeping things from moving. I
guess
   with something as sick as a VBL, anything can happen; but I say it's
safe.

If you have any comments, questions, or suggestions, please feel free to
send me mail personally (no, you don't have to voice your opinions over the
net  ;)   )

send to: rudman@engin.umich.edu

--------------------------------------------------------------------------
Daniel E. Rudman
The University of Michigan
Computer-Aided Engineering Network
Macintosh Systems Administration

#### BINHEX     spinning-cursor-c.hqx   ****

From: casgrain@ERE.UMontreal.CA (Casgrain Philippe)
Subject: Spinning Cursor Library (code) 
Date: Fri, 5 Feb 93 13:49:55 EST 

     This posting contains a library file that allows any 
program (C, Pascal, Fortran) to install an asynchronous
(task-independent) spinning cursor.
     It is blatantly copied from the book "Macintosh Programming
Secrets, 2nd Edition", and distributed with the author's
consent.  All I did (!) is type the code.  I can also tell you
that it works fine ;-).

     Instructions, source code (Think C) and sample code (Pascal
and C) are included.  If you have questions, feel free to ask!

     Philippe Casgrain
     Casgrain@ERE.UMontreal.CA

P.S. This is postcard-ware: it is not my intellectual property,
but if I stick the disk on my fridge, my kids don't see the
point... :-)



#### BINHEX     standard-get-anything-c.hqx   ****

Date: Fri, 26 May 1995 05:56:56 -0700
From: ammon@cs.byu.edu (Ammon Skidmore)
Subject: StandardGetAnything.c 1.0.1

StandardGetAnything.c is source code that displays an open dialog that
returns both files and folders.  Unlike its predecessors,
StandardGetAnything.c does not use any global variables and the code does
not rely upon any external, non OS libraries (stdio.h).
Metrowerks C and THINK C 7.0 projects included.
Released under Public Domain by Ammon Skidmore (ammon@cs.byu.edu)


#### BINHEX     startup-screen-picker-12-c.hqx   ****

From: f8dy@netaxs.com
Subject: Startup Screen Picker 1.2 (source code)
Date: Sun, 10 Jul 1994 01:56:03 -0400 (EDT)

Startup Screen Picker 1.2 is a system extension (and startup application)
which will pick a random startup screen to be displayed during system startup.

This archive contains complete THINK C 7 source for the INIT and the
startup application, including all necessary resource and project files. 
The compiled, ready-to-use programs are also available; check ftp sites or
e-mail f8dy@netaxs.com.  Finger f8dy@netaxs.com for a complete program
list.  Startup Screen Picker 1.2 is copyright 1993-4, Mark Pilgrim. 
Please read enclosed file "GNU General Public License" for licensing details.


#### BINHEX     std-get-folder-c.hqx   ****

Date: Sat, 6 Jun 92 21:31:06 CDT 
From: Kenneth B. Kirksey <kkirksey@eng.auburn.edu>
Subject: Standard Get Folder C Code 


The Think C code in this archive implements a custom Standard File Dialog 
that allows users to select folders in which to save or locate files.  
All code and resources you need to use StandardGetFolder are included.  Also 
included is a small sample program (in Think C) demonstrating the use of 
StandardGetFolder.

Due to the fact the StandardGetFolder makes use of the CustomGetFile toolbox
function and FSSpec records, it will only work under Sytem 7.0 or later. 


#### BINHEX     stoned-mouse-10-c.hqx   ****

From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Stoned Mouse 1.0 (source code) 
Date: Sat, 13 Nov 1993 23:38:48 -0500 (EST) 

Stoned Mouse is a fun little INIT which will cause your mouse to move
discretely instead of continuously, which I find breathtakingly disconcerting.
This INIT is free and is distributed under the GNU General Public License;
this archive contains complete THINK C 6.0.1 source code and project files
for the INIT.  If you do not have FTP access, e-mail the author for a copy of
the INIT, the source code, or a list of other programs by the same author.
The address is f8dy@netaxs.com.

This code demonstrates the basics of writing and installing a VBL. This code
should work under any system, with any monitor, on all Macintoshes.  Please
report any bugs/comments/suggestions to f8dy@netaxs.com.

Stoned Mouse 1.0 is copyright 1993, Mark Pilgrim, MerriMac Software Group.


#### BINHEX     str-list-4.hqx   ****

From: tinyjohn@sk.sympatico.ca
Subject: StrList4

StrList 4

Version 4 replaces versions 3, 2, and 1.

Routines for working with string lists (the STR# resource type).

    - routines for creating string list structures in memory.
    - routines for modifying string lists,
    - routines for using string lists as 'sets of strings',
    - and other assorted string list functionality too..

Full C source code, tons of documentation, and a 411 help file.

General String List (STR#) editing routines, hqx file.
Copyright (C) 1995, 1996, 1997 by John Montbriand.  All Rights Reserved.
Permission granted for public use.
Distribute freely in areas where the laws of copyright apply.
USE AT YOUR OWN RISK.
DO NOT DISTRIBUTE MODIFIED COPIES.
Comments/questions/postcards to the author at the address:
  John Montbriand
  P.O. Box. 1133
  Saskatoon Saskatchewan Canada
  S7K 3N2
or by email at:
  tinyjohn@sk.sympatico.ca
see also:
  http://www3.sk.sympatico.ca/tinyjohn/




#### BINHEX     streamer-c.hqx   ****

Date: Fri, 30 Apr 1993 14:17:32 -0700 (PDT) 
From: HOWELL@UPS.EDU (JON)
Subject: Streamer.hqx 

Here's the source to Bill's streamer, a little backup program for QIC24 
streaming tape drives and such. I took it home and compiled it, and 
discovered this version waits indefinately for devices that don't exist 
on the bus. (while(); sorts of loops in scsi.c) After I fixed that to 
timeout, it seems to work right. It's pretty basic -- tiny interface, 
very little error handling (though error checking stuff is in place), 
but this is how he sent it.
     I intend to upgrade it a bit, and when I do, I'll send it in. Bill 
said it is to be under the usual copyleft freeware sort of arrangement 
-- distribute it, but it remains his property. (don't sell it.)

(thanks, Bill!)
     --Jon
----
Here it is (a bit of a mess I'm afraid - kind of in between versions - 
so if you can't get it to compile properly, get back to me). It's a
binhexed stuffit file, so you should be able to unpack everything OK.
I've not bothered to split it up into little pieces since most mailers
seem to be able to cope nowadays.

If it does get to you OK, then please let me know (and yes, do forward
it to macgifts)

Have fun!

Bill


#### BINHEX     strip-fat-c.hqx   ****

From: woody@alumni.caltech.edu (William Edward Woody)
Subject: Strip68K and StripPPC
Date: Mon, 20 Jun 1994 21:39:48 -0700 (PDT)

Here are two programs I through together today, for removing 
unwanted executable code from a FAT application.

Strip68K removes the 68000 code from a FAT application, leaving
only the PowerPC software in it's place.

StripPPC removes the PowerPC code from a FAT application, leaving
only the 68000 software in it's place.

I have also included the source kit if anyone is interested;
part of it is a very simple drop shell that (should be) compatable
with System 6 as well as System 7. (Under System 6 or if launched
stand-alone, puts up a very simple menu bar with one option under
the File menu.)

Freeware; all I require is that if this gets redistributed elsewhere,
the entire package (Read Me, Strip68K, StripPPC and the source kit)
is redistributed as one package. Feel free to use the source code
for your own use.

					- Bill
Usual disclamers go here.

(By the way, always back up your software before converting an application.)


-- William Edward Woody
-- In Phase Consulting
-- Macintosh and Microsoft Windows Development
-- 337 West California #4
-- Glendale, CA 91203
-- woody@alumni.cco.caltech.edu

--- CUT HERE --- CUT HERE --- CUT HERE --- CUT HERE --- CUT HERE ---

#### BINHEX     strlist3-c.hqx   ****

From: John Montbriand, tinyjohn@sasknet.sk.ca
Subject: strlist3

strlist3 replaces strlist1 or strlist2.

Routines for working with string lists (the STR# resource type).

    - routines for creating string list structures in memory.
    - routines for modifying string lists,
    - routines for quickly accessing strings stored in string lists,
    - routines for using string lists as 'sets of strings',
    - and other assorted string list functionality too..

Full C source code, tons of documentation, and a 411 help file.
These libraries are for free.
Copyright (C) 1995, 1996 by John Montbriand.  All Rights Reserved.


#### BINHEX     stuff-c.hqx   ****

From: jrrk@camcon.co.uk (Jonathan Kimmitt)
Subject: A mini drag-and-drop archiver
Date: Thu, 5 May 1994 14:33:56 -0500



--========================_13840704==_
Content-Type: text/plain; charset="us-ascii"

Here's something that I knocked up over the bank holiday weekend which
might be of interest.
Let me know what you think. Cheers
                                        JRRK

------------------------------------------------------




Macintosh users might be interested in my attempt to evaluate
the performance of the power PC in a 'real' rather than a benchmark
situation. What follows is the source code and FAT binary for a mini
drag-and-drop archiver which uses the IEEE compress algorithm
and hence is compatible with the original "stuffit".

For maximum learning value I tried to make the source compatible with
both of the Metrowerks compilers and the traditional THINK_C style
of headers. The only real difference in a small program like this
is the use of universal proc pointers to handle the apple events
required for drag-and-drop operation.

Since I couldn't find a better way of doing it I made the FAT binary
by manually merging the 68000 version with the powerPC output of
the Metrowerks Linker using ResEdit. Despite the 'FAT' designation it
is only 24K which might be regarded as acceptable.

On a 6100/60 the emulated version of the program knocks an LC-III
into a cocked-hat, but the native version achieves possibly only
a 50% speedup over the emulated version. I attribute this surprising
result to the relatively frequent use of toolbox calls during the
operation in order to keep buffer sizes small, and of course the
fact that the compiler is only an alpha version.

No responsibility accepted for any data loss caused by using this
archiver on your files. It is only meant to be a benchmark remember.
You have been warned.

Your comments on bugs, performance tweaks, enhancements welcome
to jrrk@camcon.co.uk




Attachment converted: Spiff:stuff.sit (SITD/SIT!) (000184B8)
-----

Jonathan Kimmitt

In case of difficulty,
try jrrk@uk.co.camcon and/or jrrk@camcon.co.uk
when replying to this mail






--========================_13840704==_
Content-Type: application/mac-binhex40; name="stuff.sit"
Content-Disposition: attachment; filename="stuff.sit"


#### BINHEX     stus-thread-utilities-c.hqx   ****

From: Stuart Cheshire <cheshire@DSG.Stanford.EDU>
Subject: Thread Manager Utility source code
Date: Sat, 19 Mar 1994 17:33:35 -0800

// StuUsThreadUtils
// 
// (C) 6th March 1994  Stuart Cheshire <cheshire@cs.stanford.edu>
// 

StuUsThreadUtils is an ongoing development to make useful ThreadManager
routines available to the public.

I wrote it because Apple's Thread Manager is a great step forward to
helping more developers create multi-threaded applications, with all
the benefits that can bring to us end-users, so I'm very happy about it.

However, the facilities provided by Apple's Thread Manager are very raw
and minimal, and the supplimentary routines provided in Apple's ThreadUtils
leave much to be desired, and are more likely to put people off thread
programming than encourage them.

Because of this, I wrote my own ThreadUtils. They are simple, elegant,
and efficient, and should make people's lives much easier when they are
trying to write threaded code.

There are three files in this package (so far):

// ThreadSynch.c/h
// This file defines thread synchronization primitives:
// Semaphores, Mutual exclusion locks, and Condition variables.

// Pipeline.c/h
// An example of a library using mutual exclusion locks, and condition
// variables to implement a producers/consumers pipeline

// test.c
// Example code to use the above files.

Stuart Cheshire <cheshire@cs.stanford.edu>
 * <A HREF="file://brubeck.stanford.edu/www/cheshire-bio.html">WWW</A>
 * Stanford Distributed Systems Group Research Assistant
 * Escondido Village Resident Computer Coordinator
 * Macintosh Programmer


#### BINHEX     suntar-132-c.hqx   ****

From: speranza@cirfid.unibo.it (Sauro Speranza)
Subject: UPLOADING suntar1.3.2src.cpt.hqx 
Date: Tue, 3 Nov 92 13:37:09 MET 

[Source cdode for sun tar application uploaded the other day -- Gordon]


#### BINHEX     super-splash-cpp.hqx   ****

From: Andrew Nemeth <aznemeng@zeta.org.au>
Subject: AZN_SuperSplash

Source code for 'SuperSplash' follows:

-  C++ PPC native code to put up a splash screen
-  CW 7 compatible
-  Can display JPEG & PICT files, as well as PICT
   resources

SuperSplash is a native PPC Macintosh application and
source code which shows how to put up different kinds
of splash screens.

In order to display JPEG files, use is made of code
by Aaron Giles, as included on the Apprentice III CD.

Andrew Nemeth
aznemeng@zeta.org.au
24 Oct 1995
Blue Mountains, Sydney Australia


#### BINHEX     surfer-c.hqx   ****

From: rew8422@ultb.isc.rit.edu (R.E. Wilhelm )
Subject: Think C commToolbox stuff 
Date: Sun, 3 May 92 20:56:01 EDT 

Dear Moderators,
   This archive contains the source code for a program called Surfer,
which is a demo of the Macintosh Communications Toolbox. Also included
are some libraries and interfaces that work with Think C 4.0(Think c 5
include these files). The program compiles under Think C 4.0. I'm not
smart enough to get it to work under version 5.0:) but I'm sure it can
be done. Enjoy.

Surfer was originally a Pascal program release by Mac DTS for MPW
Pascal.

Ron Wilhelm
rew8422@ultb.ics.rit.edu
----------8<--------------------------8<------------------------8<---------

#### BINHEX     swarm-15-ad-c.hqx   ****

From: leo@cp.tn.tudelft.nl (Leo Breebaart)
Subject: The Swarm 1.5 Src [Screensaver Module source code]

This is the fully documented (and free) CodeWarrior 7 C source code for
The Swarm 1.5, a module I wrote for After Dark, Darkside of the Mac,
and other AD-compatible screensavers.

The Swarm is a simple, but surprisingly elegant and mesmerizing line
animation, in which a number of small line segments (the 'bees') chase
one other segment (the 'queen bee') across the screen.

This code can help you get started on writing your own screensaver
modules; it also illustrates how to use GWorlds, how to create an
animated After Dark about box, and how to create a FAT module.

Leo Breebaart (leo@cp.tn.tudelft.nl)


#### BINHEX     sys-menu-14-c.hqx   ****

From: (Matt Slot) fprefect@umich.edu
Subject: SysMenu 1.4 - Sample C Project + Source

SysMenu is a shell project that demonstrates how to create and manage a system
menu next to the Balloon Help menu. The project has been updated to compile
under Metrowerks compiler using Universal Headers.

Since the initial release was designed for CW6, I have updated the code for
CW8. This means that most of the Custom Code Resource stuff is gone (yes!!!),
and the code uses their standard code headers which are now much prettier.

There are other things I could have added to this project, but I think this
stuff is general and clean enough for others to use. Drop me any comments and
suggestions... heck, I may even use 'em!

Changes from 1.3 to 1.4

Recompiled SysMenu and INIT Dispatcher under CW8. Fixed crashing bug in
INIT Dispatcher on certain PowerPC systems at startup.

Matt Slot (fprefect@umich.edu) - 6/24/96
<http://www.si.umich.edu/~fprefect>


#### BINHEX     system-menu-c.hqx   ****

Date: Thu, 27 Jul 1995 01:34:00 -0400
From: Matt Slot <fprefect@engin.umich.edu>
Subject: SysMenu Sample Source

SysMenu is a shell project that demonstrates how to create and manage a system 
menu next to the Balloon Help menu. The project has been updated to compile
under Metrowerks 6.0 compiler using Universal Headers.

There are 2 additional goodies included in this package:

The "INIT Dispatcher" folder contains a sample project that demonstrates how
to create a FAT system extension. See the appropriate files for more info on
the technique.

The "FAT sysmenu" folder contains 2 projects that rely on the Dispatcher to
manage a common code file between 68K and PPC compilers.

There are other things I could have added to this project, but I think this
stuff is general and clean enough for others to use. Drop me any comments and 
suggestions... heck, I may even use 'em!

Matt Slot (fprefect@umich.edu) - 7/26/95


#### BINHEX     t-tidy-applciation-cpp.hqx   ****

From: adamw@panix.com (Adam Wildavsky)
Subject: TTidyApplication - A leak detector for MacApp
Date: Fri, 25 Feb 1994 00:08:25 -0500



--========================_27835200==_
Content-Type: text/plain; charset="us-ascii"

TTidyApplication is a C++ class for software developers who use MacApp,
Apple's object oriented application framework. Its purpose is to help
locate all the TObject descendants which a MacApp application has allocated
but not freed.

TTidyApplication is intended to be easier to use than the "Leaks" dcmd. It also
works in MacApp 3.1 where "Leaks" is ineffective.

In order to use the code you'll need MacApp 3.0.1 with Steve Jasik's "The
Debugger" or MacApp 3.1 (I used b1) with either The Debugger or Mike Lockwood's
"VoodooMonkey" debugger. VoodooMonkey is available on Apple's "Tool Chest"
edition of its monthly developer CD.

For more information see the enclosed summary and my article in the March '94
issue of Frameworks magazine (forthcoming.)

Adam Wildavsky - Sr. Consultant - KPMG Peat Marwick - adamw@panix.com



--========================_27835200==_
Content-Type: application/mac-binhex40; name="TTidyApplication.sit"
Content-Disposition: attachment; filename="TTidyApplication.sit"


#### BINHEX     talk-106-pas.hqx   ****

Date: Sat, 25 Apr 1992 13:07:01 +0800 
From: Peter N Lewis <peter@cujo.curtin.edu.au>
Subject: source/pascal/talk-106-source.hqx 


This is the source code for Talk v1.0.6 & Talkd v1.0.6.

Talk and talkd is an implementation of the UNIX Talk protocol for 
Macs with MacTCP.  Talkd is a background only application
that notifies you when a talk connection is requested, and Talk is a 
talk client, allowing you to talk to other machines. Both are System 7 
friendly (but hopefully not dependent).

Talk&Talkd are Povertyware, which basically means you get to send me five
dollars if you can.  The source code may be used for any non-commertial
purposes as long as I get a mention in the about box and documentation
of any derivative program.

Hope you like them,
   Peter. <peter@cujo.curtin.edu.au>

Talk 1.0.6 & Talkd 1.0.6 Copyright 1992, Peter N Lewis 

#### BINHEX     talking-clock-10b1-c.hqx   ****

From macmod Thu Aug 26 20:12:40 1993
Date: Fri, 27 Aug 93 01:06:08 +0200
From: d88-jwa@nada.kth.se
Subject: Talking Clock - Source Code! 1.0b1


For those of you more interested in the "why" than the "because,"
here comes source code for Talking Clock. It is structured so
is can work as a minimalistic application shell as basis for your
own applications, with a less than 10K overhead for windows and menu
management! Read the license; it's freeware.

						/ h+
--
 -- Jon W{tte, h+@nada.kth.se, Mac Hacker Deluxe --

   What we need is a good GNU [...] licence manager implementation.
                     -- Raphael Manfredi








talking-clock-source.cpt.hqx

#### BINHEX     talking-clock-pro-201-c.hqx   ****

From: zap@mindcontrol.org
Subject: Talking Clock Pro� 2.0.1 source

Enough people have pestered me about updating Talking Clock
(and fixing the bug where it didn't talk) that I finally
broke down and did it. Talking Clock speaks the time every
hour on the hour, or more often if you prefer. The executables
are mailed to macgifts@mac.archive.umich.edu.

This is probably the last-ever public release of System 7
software I make, since I'm firmly rooted in the BeBox camp
these days :-)


#### BINHEX     tar-40b-c.hqx   ****

From: cruff@niwot.scd.ucar.EDU (Craig Ruff)
Subject: Tar 4.0b Source
Date: Thu, 3 Feb 94 08:42:27 -0700

This is the source for tar for the Macintosh version 4.0b.

It contains rudimentary support for SCSI tape drives and some
other fixes (see manual in the separate executable file).

I am no longer going to make changes or enhancements to tar.
Feel free to take the source and modify to suit your needs.

Craig Ruff (cruff@ncar.ucar.edu)


#### BINHEX     task-manager-221-c.hqx   ****

Date: 22 Jun 92 10:31:23 U 
From: "Michael Hecht" <michael_hecht@mac.sas.com>
Subject: Task Manager 2.2.1 

Regarding   Task Manager 2.2.1
The Task Manager is a C source code package for creating and managing
tasks--separate execution threads that run nonpreemptively in the background.
Tasks should periodically call a Task Manager yielding routine to allow other
tasks to run. Tasks are ideal for lengthy processes that you would like to run
in the background, since the task runs in a separate execution thread from your
event loop.

--Michael


=======================================================================
Michael P. Hecht                 | Internet:  Michael_Hecht@mac.sas.com
SAS Institute Inc.; Cary, NC USA | AppleLink: SAS.HECHT



#### BINHEX     task-manager-pas.hqx   ****

Date: Tue, 24 Nov 1992 14:05:12 +0800 
From: Peter N Lewis <peter@ncrpda.curtin.edu.au>
Subject: source/pascal/TaskManager-211P.hqx 


_______________________________________________________________________
Peter N Lewis <peter@ncrpda.curtin.edu.au>           Ph: +61 9 368 2055
The Task Manager
Version 2.2.1P

This software source package is Copyright   1990 91 by Michael Hecht. 
All Rights Reserved. It may be freely distributed in source or object 
code format; however, the source code may not be sold for profit or 
charged for in any way. 

The Task Manager is a package for creating and managing tasks-separate 
execution threads that run nonpreemptively in the background. Tasks 
should periodically call a Task Manager yielding routine to allow other 
tasks to run. Tasks are ideal for lengthy processes that you would 
like to run in the background, since the task runs in a separate 
execution thread from your event loop.

Michael Hecht wrote The Task Manager using THINK C 5.0.1, and I 
converted in to Pascal using THINK Pascal 4.0.1.   The documentation 
is unchanged from Michael's, so it refers to C prodcedure's, but 
I'm sure you can figure it out.

Hope its useful to someone,
   Peter. <peter@ncrpda.curtin.edu.au>

Task Manager v2.2.1P Copyright 1990-92 Michael Hecht


#### BINHEX     tax-101-fkey-p.hqx   ****

From: HE KUER <elee74l@Menudo.UH.EDU>
Subject: Tax FKEY 1.0.1
Date: Sat, 7 May 1994 17:14:01 -0500 (CDT)

Moderators,

This is a re-submission of the Tax FKEY. This is version 1.0.1.
I only made minor changes in the documentation. I forgot to include
the hard-coded tax rate in the READ ME file last time. It's 8.25%.

Tax FKEY adds the tax to a number in the clipboard. See the READ
ME for more info, including a QuicKeys script to automatically read
in a number from a cell and replace it with the tax added onto it.

THINK Pascal 4 source code enclosed. Freeware.

Compacted and BinHexed with Compact Pro 1.34.

This may be included in the Info-Mac CD-ROM. Others interested in
commercial distribution should contact me first.

Enjoy,


David Alten
elee74l@menudo.uh.edu
HE KUER!!


#### BINHEX     tcl-206-updt.hqx   ****

Date: Wed, 3 May 1995 19:11:34 -0400
From: tree@bedford.symantec.com (Tom Emerson)
Subject: TCL 2.0.6 Update Available

The Symantec Macintosh Development Tools Group would like to announce the
availability of the THINK Class Library 2.0.6 update. This update will
patch any previous version of the THINK Class Library 2.0 to version
2.0.6.

Who Needs This Update
Any developer using Symantec C++ for Macintosh 7.0.x or Symantec C++ for
Power Macintosh 8.0 who develops applications with the THINK Class Library
will benefit from this update.

About the Update
This release is the second in a new distribution mechanism for online
updates to the various components of our development tools. Rather than
wait for every component to be ready before posting, we will distribute
patches to individual components as they become available. While this may
be less convenient than "one-stop shopping" for the latest of everything,
we feel it is the best way to provide the developer with timely and
effective updates.

This update contains:

TCL 2.0.6 Update
    7.0.x only
        Demos replacements
            AEStarter.(pi)
            ARM 15.3.(pi)
            Art Class.(pi)
            NewClassDemo.(pi)
            Process Monitor.(pi)
            TinyEdit.(pi)
        Rebuild Standard Libraries
        Standard Libraries replacements
            alloc.c
            setjmp.h
    Build 68K PCHs
    Build 68K PCHs.(pi)
    TCL 2.0.6 Update READ ME
    TCL 2.0.6 Update.sea
    TCL Project Model replacements
        SPM
            @1
        TPM
            @1.(pi)
    TCL Release Notes

The update has been submitted to the info-mac archives, CompuServe,
America Online, and can be found on the Symantec DTS ftp server at the
following URL:

<URL:ftp://devtools.symantec.com/macintosh/updaters/devtools/sym.cpp-va-tcl.
updates/tcl-206-update.hqx>

Updates to other components will be posted and announced when they are
available.

Questions regarding our Development Tools can be sent to

<URL:mailto:support@devtools.symantec.com>

bug reports should be sent to

<URL:mailto:bugs@devtools.symantec.com>

Tom Emerson
tree@bedford.symantec.com


#### BINHEX     tcl-terminalpane-10.hqx   ****

Date: Tue, 17 Aug 1993 14:34:08 -0600
From: Eric Scouten <scouten@staff.tc.umn.edu>
Subject: /source/c/tcl-terminalpane-10.sit

The enclosed file is a source code snippet for Think C 6.0 and TCL. It
provides a basic 24*80 terminal display for use in terminal-style programs.
Handles basic display functions, but does not provide advanced terminal
emulation (i.e. does not include VT100).

Freeware. Copyright (C) 1993, Eric Scouten, FrostByte/Design.

Thanks for including it...

-Eric
---
Eric Scouten                         Internet:    scouten@staff.tc.umn.edu     
Student Affairs Research             Bitnet:      scouten@umnacvx
110 Morrill Hall * Univ of Minn      Phone:       +1 612 626 0746
Minneapolis, MN 55455 USA

"To start with, we must stop using students as the _escape_ goats." -Anon.


#### BINHEX     tcp-10-lib-cpp.hqx   ****

Date: Fri, 28 Apr 1995 07:04:42 -0400
From: jadams@Glue.umd.edu (Josh Adams)
Subject: tcp++.lib-1.0

tcp++.lib 1.0 is a CodeWarrior Library for programming TCP. It uses a
little bit of C++ in the library. The whole source code for the library and
also the project used to make the library are all included.

It is based on source found in inetd for the Mac. The library is meant to make
it relatively easy to do TCP programming in CodeWarrior. I can write a
small client app in 10 lines of code with it.

Josh Adams
Mail: jadams@eng.umd.edu


#### BINHEX     tcp-interface-example-pas.hqx   ****

Date: Thu, 10 Dec 1992 11:27:56 +0800 
From: Peter N Lewis <peter@ncrpda.curtin.edu.au>
Subject: source/pascal/tcpexample.hqx 


This is some example code to demonstrate the use of my TCP unis.
These units implement a relatively high level interface to MacTCP,
and allow fairly easy writing of TCP applications in Pascal using
event driven programming.  The example program is not a full shell, 
it simply implements a very basic finger to a fixed user@host.
It should be fairly easy to understand.  I've used the code in many
apps, most of which are available from various ftp sites, or from
redback.cs.uwa.edu.au in /others/peterlewis.

Hope its useful to someone,
   Peter. <peter@ncrpda.curtin.edu.au>

TCPExample v1.0.0 Copyright 1992 Peter N Lewis 


#### BINHEX     tcp-oo-example-10.hqx   ****

Date: Thu, 1 Jul 1993 15:07:21 +0800 
From: Peter N Lewis <peter.lewis@info.curtin.edu.au>
Subject: source/pascal - TCPOOExample 1.0.0 


This is some example code to demonstrate the use of my Object
Oriented TCP units.  These units implement a relatively high level 
interface to MacTCP, and allow fairly easy writing of TCP 
applications in Pascal using event driven, object oriented 
programming.  The example program is not a full shell, 
it simply implements a very basic finger to a fixed user@host.
It should be fairly easy to understand.  I've used the code in many
apps, most of which are available from various ftp sites, or from
redback.cs.uwa.edu.au in /others/peterlewis.

Hope its useful to someone,
   Peter. <peter.lewis@info.curtin.edu.au>

TCPOOExample v1.0.0 Copyright 1993 Peter N Lewis 


#### BINHEX     te32k-12a-c.hqx   ****

Date: Thu, 21 Jul 1994 17:30:05 +1000
From: michaell@gsb.usyd.edu.au (Michael Lowe)
Subject: TE32K 1.2a (C Source code & demo app)



--========================_8105853==_
Content-Type: text/plain; charset="us-ascii"

TE32K is designed to be a more-or-less "plug in" replacement for the
Macintosh Toolbox TextEdit package.  The major advantage is that it can
manipulate text files LARGER than 32K.   The TE32K package includes
standard (non-OOP) C source code, object files (for 68k and PPC), a
compiled (FAT! :-) demo app & documentation.

TE32K is free of charge, but if you do use TE32K in a piece of software
which you market, for every copy you sell, you are required to donate $1.00
to the World Wildlife Fund, 90 Eglinton Avenue East, Suite 504, Toronto,
Ontario, Canada, M4P 2Z7.

TE32K was originally written by Roy Wood <rrwood@io.org>.  This version is
an upgrade made by Michael Lowe <michaell@gsb.usyd.edu.au> from the 1.2
source code.   Roy Wood plans to release a new version soon, and has given
permission for the release of this version in the interim.   Enjoy!

Michael Lowe

New in v1.2a
------------
* implemented triple click support
* implemented TE32KFeatureFlag
     - te32KFOutlineHilite: outline text highlighting in deactivated state
     - te32KFShowCarridgeReturns: show carriage returns with paragraph marker
* implemented TE32KGetHiliteRgn for 'Drag and Drop' support
* numerous bug fixes

* Changes to support:
        - THINK C 6.0x/7.0x
        - MPW C
        - Universal Headers
        - Mac on RISC SDK



--========================_8105853==_
Content-Type: application/mac-binhex40; name="TE32K.sit"
Content-Disposition: attachment; filename="TE32K.sit"


#### BINHEX     tetris-light-c.hqx   ****

From: Hoylen Sue <hoylen@central.sussex.ac.uk>
Subject: TetrisLight-src.cpt.hqx (Part 1/2)
Date: Fri, 13 Aug 93 12:35:26 BST


The following is a compact pro archive containing the Think C 5.0
sources for "Tetris Light".  This is a lightweight Tetris program
with source code freely available under the GNU General Public
License.

---Beginning of Part 1/2---

#### BINHEX     text-editor-dlx-15-src.hqx   ****

From: "Jonathyn Bet'nct" <jonrelay@napanet.net>
Subject: Text Editor Deluxe 1.5 Source Code


Here is the RealBasic 3.0 source code for Text Editor Deluxe. This is a
public domain program. You can make whatever modifications you find
necessary.

(C) 2001 Kreative Software, a division of Kreative Korporation.
http://kreativekorp.cjb.net



#### BINHEX     think-dcmd-101-c.hqx   ****

Date: Wed, 7 Sep 1994 10:43:38 +0200
From: Patrick Stadelmann <Patrick.Stadelmann@etudiants.unine.ch>
Subject: Think C dcmd 1.0.1

Hi !

This package will allow you to write dcmds (debugger commands)
in Think C. It contains the glue code necessary to link the
"dcmd.o" library, and Think Put, a collection of routines to
create formatted output in dcmds.

To use this package, you need the "dcmd.o" library and the
"dcmd.h" header from Apple Computer, Inc. These files are
available along with MacsBug from ftp.apple.com in the
dts/mac/tools/macsbug/ directory.

Changes since version 1.0 :

- Now compatible with "TestDcmd". "Break on entry" didn't work
  with version 1.0.
- The "@1." project now has the "Use MacsBug name" flag set.
- Renamed global variables.
- Some fixes in the doc.

  IMPORTANT : There is no change in the interface between
              version 1.0 and 1.0.1. Thus, there is no need
              to modifiy your code.

This package is freeware and may be distributed freely.

Written by P. Stadelmann <Patrick.Stadelmann@etudiants.unine.ch>
Feel free to contact me if you have comments, suggestions or
bugs to report.

Patrick


#### BINHEX     thread-library-11-c.hqx   ****

From: "Ari I. Halberstadt" <ari@shore.net>
Subject: ThreadLibrary-1.0
Date: Thu, 8 Jun 1995 17:54:55 -0400 (EDT)

Thread Library is a free library, for use by Macintosh software developers, 
that implements cooperative multiple thread execution within a single 
application. Thread Library

-       does not require any extensions;

-       should work with all Macintosh models (from the Plus on up);

-       works with system 7.x and with system 6.x under Finder or MultiFinder;

-       runs in native mode on 680x0 and PowerPC* based Macintoshes;

-       compiles into a small library of 3 to 8 kilobytes;

-       works with the Symantec, Metrowerks, and MPW compilers.

The 680x0 version of Thread Library is 2-3 times faster than Apple's Thread 
Manager. The PowerPC version of Thread Library is about 2 times faster than 
Apple's Thread Manager.

Every thread has its own stack, and there are no restrictions on the
objects that can be allocated on a thread's stack. All other global
application data are shared by threads. Context switches are very
efficient since they involve only a few operations to save the current
thread's state, followed by a context switch to the new thread, and a
few instructions to restore the new thread's state.  This distribution
includes:

-       complete source code in C;

-       detailed documentation in Microsoft Word 5.0 format;

-       prebuilt libraries for 68K and PowerPC programs, including debug 
versions of the libraries;

-       a new interface that mimics Apple's Thread Manager;

-       a simple test application that demonstrates how threads may be used;

-       an application that compares the speed of Thread Library with the 
speed of Apple's Thread Manager;

-       Metrowerks CodeWarrior project files;

-       AppleScript program for automatic builds.


#### BINHEX     three-d-buttons-10b6-cdef.hqx   ****

Date: Tue, 2 May 95 07:58:10 PDT
From: zig@WC.Novell.COM (Zig Zichterman)
Subject: 3D Buttons 1.0b6

Attached is version 1.0b6 of the 3D Buttons CDEF. It fixes the
following bugs:

* Completely rewritten using more C++ features
* Removed Macsbug labels for smaller CDEF (now 14K)
* Changed iconButton procID from 4 to 3 to make room for indentHighlighted flag
* Added indentHighlighted flag (0x04) for pushButton and iconButton

--Zig Zichterman
ziggr@aol.com


#### BINHEX     three-point-plotters-c.hqx   ****

From: kenlong@netcom.com (Ken Long)
Subject: 3pointplotters-c
Date: Wed, 12 Jan 1994 13:23:46 -0800 (PST)

Hello, there, MacGift Givers!

This file contains 3 Think C 5 projects.

1 "NewCube" which puts up a data window and a drawing window, then uses 
point plots to draw an anitmated cube which rotates on two axis'.  It's 
an update from an old .c file I found on the old BMUG BBS.

2 "NuCube" is a variation on the other done by Mark Hanrek, which adds a 
more sophisticated Mac shell and includes a GWorld.

3 "NewShuttleViewer" is a Pascal to C port I did of "Eddy's Shuttle 
Viewer, and improved upon it slightly.  The original and .p file is 
included.  There's also a code fragment that can be added to draw the 
coordinates where the points result over the window repeatedly as they 
are generated.  The program draws a wire-frame Space Shuttle, ala point 
plots, then erases, then draws a slightly rotated view, repeat ad infinity.

-Ken-

----------------------Get to snippin'!------------------------------------


#### BINHEX     threed-game-machine-demo.hqx   ****

Date: Fri, 7 Apr 1995 06:12:57 +0200
From: main@virtually.mcnet.ch (Virtually Unlimited)
Subject: 3D Game Machine Demo description

The "3D Game Machine" is an API-style toolbox for 3D arcade games and
interactive multimedia applications development, it includes a real-time 3D
rendering library and a whole set of routines for manipulating 3D virtual
environments.

The main features are:

- simple easy-to-use interface
- very fast rendering
- full "virtual" 3D worlds with six degrees of freedom
- free-form texture mapping with optional flat-shading
- material and light properties
- convex/cave polygons with unlimited number of vertices
- unlimited number of light sources
- dynamic hidden surface removal
- special graphic modes for fast full-screen animation
- automated shape behaviors

3D Game Machine is especially destined to Game Developers who wish to
create fast 3D arcade games without the need to get into the problems of 3D
algorithms. 3DGM is also intended for interactive multimedia and
educational applications who need to run on a broad number of machines,
from an entry-level color Macintosh to the latest PowerMac. 3DGM currently
works on PowerMacs only, however.

3DGM has been optimized especially for games, its aim is to achieve fluid
animations through very high frame rates -- even at full screen resolution,
and permforms well even in low-memory situations. It supports free-form
shaded texture mapping, with a speed of up to 15 frames per second on an
640 x 480 window completely texture-mapped with arbitrarily angled
polygons, rendered on a PowerMac 6100/60.


The "3D Game Machine Demo" has 8 different sequences that show how fast
3DGM renders, it also allows to save documentation files.


To find out more about our products, please contact us at:

Virtually Unlimited, SNC
24 Chateau-Banquet
CH-1202 Geneva/Switzerland
Internet: main@virtually.mcnet.ch
Compuserve: 100423,2721
ftp://FTP.VIRTUALLY.MCNET.CH/virtually
Voice Mail: (+4122) 310-0806 CET (central European time)
Fax: (+4122) 733-3115

Enjoy the demo !


#### BINHEX     tim-ga-12-source.hqx   ****

From: tieloran@NTCILO01ES.ntc.nokia.com
Subject: TimGA 1.2 Source Code (PowerPlant/C++)


 TimGA 1.2 Source Code (C++/PowerPlant)
 
 Description
 This package includes the full PowerPlant based C++ source code for
 TimGA - a genetic algorithm based graph drawing application for Macintosh.
 The code specifically demonstrates the use of ...

 *  a genetic algorithm to draw graphs nicely
 *  Metrowerks' PowerPlant framework
 *  PowerPlant's new grayscale appearance controls
 *  AGA Slider class by James Jennings
 *  Metrowerks' Standard Library (MSL)

 Requirements
 *  CodeWarrior 11 or later
 *  MSL 2.1.1 (available from www.metrowerks.com) or later
 *  PowerPlant grayscale classes v.1.1.1 (available from Metrowerks)
 *  some sort of C++ skills...




#### BINHEX     tim-ga-121-source.hqx   ****

From: tieloran@NTCILO01ES.ntc.nokia.com
Subject: TimGA 1.2.1 Source Code (PowerPlant/C++)



 TimGA 1.2.1 Source Code (C++/PowerPlant)
 ========================================

 Description
 -----------
 This package includes the full PowerPlant based C++ source code for
 TimGA - a genetic algorithm based graph drawing application for Macintosh.
 The code specifically demonstrates the use of ...

 *  a genetic algorithm to draw graphs nicely
 *  Metrowerks' PowerPlant framework
 *  PowerPlant's new grayscale appearance classes
 *  AGA Slider class by James Jennings
 *  Metrowerks' Standard Library (MSL)

 Requirements
 ------------
 *  CodeWarrior Pro 1 or later (i.e. the project is for IDE 2.0)
 *  some sort of C++ skills...

[Note to Archivist: This file replaces .../dev/src/tim-ga-12-source.hqx]

>>> Timo Eloranta (timo.eloranta@ac.com) <<<

[[ T-121-CP.HQX : 2378 in T-121-CP.HQX ]]




#### BINHEX     tiny-tools.hqx   ****

From: tinyjohn@sk.sympatico.ca
Subject: TinyTools

TinyTools 2

Version 2 replaces version 1.2, and 1.

One big old source code collection, soup to nuts.  C, C++ libraries
for files, communications, data storage, data conversion, drawing.
Just a bunch of stuff I had around collecting dust.

Copyright (C) 1986, 1987, 1995, 1996, 1997 by John Montbriand.
All Rights Reserved.
Permission granted for public use.
Distribute freely in areas where the laws of copyright apply.
USE AT YOUR OWN RISK.
DO NOT DISTRIBUTE MODIFIED COPIES.
Comments/questions/postcards to the author at the address:
  John Montbriand
  P.O. Box. 1133
  Saskatoon Saskatchewan Canada
  S7K 3N2
or by email at:
  tinyjohn@sk.sympatico.ca
see also:
  http://www3.sk.sympatico.ca/tinyjohn/





#### BINHEX     toastys-keyword-list-rsrc.hqx   ****

Date: Wed, 4 Jan 1995 21:41:18 +0000
From: toast@192.92.157.50 (Jonathan Wilson)
Subject: Toolbox Keyword List for Metrowerks CodeWarrior CW5

I got my Metrowerks CW5 update today, and thought "Wouldn't it be cool if
the new custom keywords in the editor could be a list of the types defined
by the Toolbox?". So, after a lot of playing around with the version 2.0a3
Universal Headers using streamedit, sort, catenate etc. in MPW (see, it
still has its uses!) I arrived at this list. I tacked the types from
"PP_Types.h" onto the end.

"Toasty's Keyword List" is a Resorcerer file containing a single STR#
resource. To include it in your spanking new CW5 project, just open it and
your project with Resorcerer (or ResEdit if you must) and paste 'STR#' 1008
into your project. The next time you open the project, all (I hope) types
defined using 'typedef' in the Universal Headers (Boolean, AEDesc,
CInfoPBRec etc etc) will appear in the custom keyword colour (green by
default).

Drop me a line if you find it useful, or if you have problems.

Use at your own risk, your mileage may vary, please notify me before
including in any distribution medium (net archive, CD ROM, BBS etc.), don't
step on the cracks.

Jon

Jonathan Wilson
Macintosh Ripware Developer
Hyphen, Diss, UK.

toast@diss.hyphen.com
phone: +44 1379 652857
fax: +44 1379 644206


#### BINHEX     trans-skel-25-p.hqx   ****

From: ingemar@lysator.liu.se
Date: Tue, 24 Jan 1995 11:08:22 +0100
Subject: TransSkel Pascal 2.5; Pascal library with source code.

TransSkel is an excellent library, written by Paul DuBois and translated
to Pascal by Owen Hartnett. It takes care of most tedious standard
tasks for you, like event, menu and window handling, calling procedures
that you provide when something interesting happens.

TransSkel Pascal 2.5 is a modernized version of TransSkel Pascal 2.0,
which is severely outdated by now. There is a version 3 of the C version,
which can be used from Pascal, but as Paul states himself, it is
very convenient to have the full code available, and I really like
TransSkel in the form of a single, not too lange file that I can add to
my projects. Also included are the plug-ins TransDisplay and TransEdit,
and several demos.

Projects for Think Pascal and Metrowerks Pascal (MPW interfaces)
included.

This new version was made by Ingemar Ragnemalm and is in the Public
Domain just as the original TransSkel.


#### BINHEX     ttidy-application-cpp.hqx   ****

From "vinko@spss.com (Vinko Tsui (312) 329-3455)" Mon Mar  7 10:17:10 1994
Date: Mon, 7 Mar 1994 12:17:08 -0600
From: vinko@spss.com (Vinko Tsui (312) 329-3455)
Subject: TTidyApplication - A leak detector for MacApp



--========================_21343244==_
Content-Type: text/plain; charset="us-ascii"

This is a posting for Adam Wildavsky (adamw@panix.com).

Please see his description bellow

-- Vinko

Vinko Enterprises, Oakville, Ontario, Canada, vinko@applelink.apple.com

-----------

TTidyApplication is a C++ class for software developers who use MacApp,
Apple's object oriented application framework. Its purpose is to help
locate all the TObject descendants which a MacApp application has allocated
but not freed.

TTidyApplication is intended to be easier to use than the "Leaks" dcmd. It also
works in MacApp 3.1 where "Leaks" is ineffective.

In order to use the code you'll need MacApp 3.0.1 with Steve Jasik's "The
Debugger" or MacApp 3.1 (I used b1) with either The Debugger or Mike Lockwood's
"VoodooMonkey" debugger. VoodooMonkey is available on Apple's "Tool Chest"
edition of its monthly developer CD.

For more information see the enclosed summary and my article in the March '94
issue of Frameworks magazine (forthcoming.)

Adam Wildavsky - Sr. Consultant - KPMG Peat Marwick - adamw@panix.com



--========================_21343244==_
Content-Type: application/mac-binhex40; name="TTidyApplication_w=Summary.sea"
Content-Disposition: attachment; filename="TTidyApplication_w=Summary.sea"


#### BINHEX     turbo-tcp-201-cpp.hqx   ****

Date: Tue, 22 Nov 1994 23:32:30 -0600
From: scouten@uiuc.edu (Eric Scouten)
Subject: dev - TurboTCP update (again)



--========================_13678449==_
Content-Type: text/plain; charset="us-ascii"

Attached is a copy of TurboTCP 2.0.1. This should be placed in a
development libraries directory and replace any previous version of
TurboTCP. This version fixes a minor compile-time error with 2.0.

Thanks,

-eric



Description:

The TurboTCP class library integrates the Think Class Library with Apple's
MacTCP driver. This library provides robust support for most TCP/IP
applications on the Macintosh. Its major features include: asynchronous
operation (TurboTCP does not use "polling loops"), high-speed automatic
data receiving mechanism, mix-in architecture, robust error recovery, and
background friendly.



--========================_13678449==_
Content-Type: application/mac-binhex40; name="TurboTCP_2.0.1.sit"
Content-Disposition: attachment; filename="TurboTCP_2.0.1.sit"


#### BINHEX     twist-10-c.hqx   ****

From: crawford@scruznet.com (Michael D. Crawford)
Subject: Twist 1.0 Screensaver Source Code

Enclosed is the source code to Twist 1.0, a screensaver module for Berkeley
Systems' After Dark.

Twist "twists" the pixels of the screen in an interesting way.  First it
tilts the screen over to the right, then scrambles it, then repeated images
go in and out of phase, and eventually the original image is restored.

The source code includes:

- the After Dark Testbed, which is an application shell that allows you to
use a source code debugger to develop your own After Dark modules. This
works by linking the module source file in as a subroutine to the
application, which then simulates the environment of After Dark by calling
the module with the various messages.

- GoToWebPage.c, which searches for a browser, launches it, and directs it
to a given URL via Apple Events.

Michael D. Crawford
crawford@scruznet.com
http://www.scruznet.com/~crawford


#### BINHEX     u-resource-parser-cpp.hqx   ****

From: uzs90z@ibm.rhrz.uni-bonn.de (Michael Schuerig)
Subject: UResourceParser (resource parsing in C++)
Sent: 14 October 1996

UResourceParser is a simple framework for creating parsers for resource of
almost any type. Also included is source code for generating a skeleton
parser from a ResEdit TMPL resource.

It utilizes some utility classes of Metrowerks PowerPlant application
framework. This can be easily adapted to your needs however.

This is freeware. Use it as you see fit, respect my copyright and don't
blame me for any problems with it.

Michael Sch|rig
mailto:uzs90z@uni-bonn.de


#### BINHEX     ultimate-button-cdef.hqx   ****

From: cschaffhauser@datacomm.ch (Christoph Schaffhauser)
Subject: Ultimate Button CDEF 1.0.2 - Source Code

Ultimate Button CDEF is a very Cool Control Definition which let you
create Buttons with Text, Icon Families, cicn Resources, ICON
Resources, SICN Resources and PICT Resources.

Very Cool 3D Effect!

Chris


#### BINHEX     ultra-c.hqx   ****

From: M_P_McLaughlin%CAASD1@MWMGATE1.mitre.org
Subject: Submission of "Ultra" Random-Number Library
Date: Tue, 8 Feb 1994 12:18:30 -0600



--========================_13778016==_
Content-Type: text/plain; charset="us-ascii"

This is an implementation of the "Ultra" pseudo-random number generator.
Included are source code written in C/Assembly, a header file and a demo.
The code REQUIRES a Macintosh (or other computer with a *Motorola* chip
set, version 68020/68881 or higher).



--========================_13778016==_
Content-Type: application/mac-binhex40; name="Ultra.sit"
Content-Disposition: attachment; filename="Ultra.sit"


#### TEXT       unfolder-20-c.txt   ****

Date: Wed, 20 Oct 1993 22:53:52 -0400 (EDT)
From: hshubs@BIX.com
Subject: Unfolder 2.0 source

This is the source code for Unfolder 2.0, so it might be named unfolder20.c,
and put in the same directory as unfolder20.hqx.

/*
 * The Unfolder - program to reconstitute MacBinary (II) encoded files.
 *
 * by various BIXen in the 'mac.hack/tutorial', started on 25 December 1989
 *
 * Originally written by Don Sample, Howard Shubs, and Bob Perkins on
 * the BYTE Information eXchange (BIX), this program is intended to allow
 * people with a C compiler and no way to transfer resources to their Mac
 * to create a way to deal with Mac files which have been downloaded to
 * non-Macintosh hardware.  This program will, when told to Unfold, 
 * reconstitute a MacBinary version 1 or 2 file to its original state.
 *
 * The program will work as-is under THINK C 5.0.2, with just the MacTraps

#### BINHEX     url-helper-10d1.hqx   ****

Hi all,
  I'm sorry if some of you got this message twice.  :)

  I'm one of the moderators at info-mac.  One thing we really want to start doing is adding URLs to the digests instead of the [Archived as...] line. This brings up some real problems, however, as sumex-aim is already greatly overloaded and to have everyone who reads info-mac in newswatcher pounding it for a file... well, that would be "bad".  I think that mac.archive at umich has the same problem.

  To solve this both archives have a fairly large set of mirror sites.  Each person has their own fav mirror site for info-mac and the umich archive.  Great.  I thought it would be great if all the various gopher/etc. programs would do automatic mirror subsititution.

  This package I've written, "URL Helper", attempts to do just that. It is a combination of a small library and a component. The component keeps track of a list of mirrors for each main site. When a program has a URL it wants to look up, it hands the URL to the component. The component sees if that URL matches any of its known mirror sites -- in some mirror list.  So something like "ftp://sumex-aim.stanford.edu/info-mac/..." would match a site on the info-mac mirror list.  The calling program can then retreive the various enabled mirrors for that site.  Path translations, etc. are taken care of.

  It is all done with text subsitution.  Here is a short example.  I didn't use the real info-mac mirror list, just a made up one.  Here is what the internal mirror list looks like for info-mac:

"\p^0://sumex-aim.stanford.edu/info-mac/^1"
"\p^0://mac.archive.edu/pub/info-mac/^1"
"\p^0://mit.mit.edu/pub/mirrors/im/^1"

The "^N" are substitution characters. They can be in any order or any position in a mirror string.

And, when I run the test program, I get back the following (this is output of a test in the file main.c).

Full Test on: 'ftp://sumex-aim.stanford.edu/info-mac/grf/util/mac-graphics.hqx'
 -> 'ftp://mit.mit.edu/pub/mirrors/im/grf/util/mac-graphics.hqx'
 -> 'ftp://mac.archive.edu/pub/info-mac/grf/util/mac-graphics.hqx'

Where the "Full test on " line whas the input URL.  The "->" are the resulting mirror URLS.  Note that sumex-aim.stanford.edu doesn't appear in the output.  That is because that was specified as a "no use" mirror...

The code to do this is pretty simple, when the library is used:
� To get only the first mirror (the primary mirror):
	URLHLibGetFirstMirror (string, mirror);

where "string" is the original url, and "mirror" is a pointer to a new mirror url.

� To get all of the mirrors back, one by one:

	short			index;
	URLHParseRef	parseRef;
	Str255			mirror;

	parseRef = URLHLibNewParseState (string);
	index = 1;
	while (URLHLibGetIndexedMirror (parseRef, index, mirror)) {
		index++;
	}
	URLHLibDisposeParseState (parseRef);

The library has been designed to work weather or not the component is in place.

Basically, that is it. I don't want to develop this any further until I get a reaction from the people who are going to use it. Is this api any good? Does it have enough flexability?  You can look at the full source; I've uploaded it to my personal archive site (it is in ftp://sumex-aim.stanford.edu/dev/src/url-helper-10d1.hqx -- it should move all the mirrors by tomorrow morning -- or send a note to me and I'll send you the .hqx).  The biggest thing it is currently lacking is that it dosen't save the mirror lists to a prefs file. I didn't want to spend more time if people decide it won't be worth it. I even volenteer(sp) to do the UI for the internet prefs app (if it ever gets written!).

I would think that programs like Anarchie, Fetch, mac gopher, etc. would use this, not a program like NewsWatcher. But, it could be one has a mirror list that would convert "ftp://" into "gopher://".. and it would be bad for Fetch to end up with a gopher URL!  Whatever.

Oh -- I do plan, if people like it, to write a set of routines that will parse a gopher/ftp address so that the author need not be bothered with that parsing (this thing only works on complete URLs right now). Also note that I've sidestepped the issue of automatically figuring out which mirror is closest. That can be added (if ever) later. What we really need is a better internet archive system, instead of stop-gap systems like this... :)

	Cheers,
		Gordon.


#### BINHEX     uupc-31-c.hqx   ****

Subject: uupc 3.1 source code [part 1 of 11]
Organization: Snulbug Software
From: dplatt@snulbug.mtview.ca.us (Dave Platt)
Date: Wed, 07 Sep 94 20:50:09 -0800

This archive contains the source code and THINK C project and resource
files for uupc 3.1.
---
Dave Platt
    dplatt@snulbug.mtview.ca.us       (domain/MX)             RIPEM and PGP
or  apple!snulbug!dplatt              (uucp path)              public keys       
or  dplatt%snulbug.uucp@apple.com     (non-MX Internet)   available upon request


-- cut here -- begin uupc 3.1 sources .cpt.hqx -- part 1 of 11 --


#### BINHEX     venus-35.hqx   ****

From: oleg@pobox.com
Subject: A better flight-thru-clouds (Venus 3.5, a simple VR thing)


	Version 3.5 restores the mouse control: if you want to take a
flight in your own hand, grab the mouse, hold on its button, and move
however you wish to. This is a pretty good way to check the speed of
3D rendering.

	The Venus window is not only movable and _full-screen_
zoomable, but also resizable. Click at the lower right corner (a
resize box will show) and size the window _any_ way you wish.

	You can now load your own elevation map (and even supply your
own colormap to color the pixels). The distribution has two sample
files you can drop onto the application's icon.

	The README file in the distribution archive tells more details. 

	The submission contains the source plus a compiled PowerMac
application. BTW, the Venus flies through screens of various depths;
although for the full-screen mode, it's better to set the monitor to
256 colors.

Keywords: voxel 3D rendering, visualization, animation, elevation map,
panning

Language: C++, CodeWarrior11
System: System 7.x (7.5.5)
Comments to: oleg@pobox.com or oleg@acm.org
Version 3.5, May 1997





#### BINHEX     visual-balloons-dr-2.hqx   ****

From: piz@magnet.at
Subject: Visual Balloons for PowerPlant


Visual Balloons(tm) for PowerPlant 
Developer Release 2 
Written by Andreas Pizsa 
Copyright ��1997 Andreas Pizsa (Tools & Toys) 
All rights reserved. 
 
What it does 
Visual Balloons is the easiest way to add Balloon Help to your 
PowerPlant projects. With Visual Balloons, you simply drag a help 
balloon from the PowerPlant Catalog window to any of your PowerPlant 
Panes, and Visual Balloons does the rest! 
 
Features 
+ Seamless integration with PowerPlant Constructor 
+ Easy to use through Drag & Drop 
+ No sublcassing required 
+ Installs in less than 5 minutes 
+ only two additional lines of code to write 
+ supports "embedded" strings, styled text, 'STR ' and 'STR#' 
resources, and PICTs 
 
System Requirements 
Visual Balloons will work on any computer that has System 7 or later 
installed. Visual Balloons disables itself automatically when running 
on a pre-System 7 computer. 
 
For development, you'll need CodeWarrior and PowerPlant Constructor.
Since the Balloon editors were created as CTYP resources, Constructor
must support those resources (I think CTYPs have been supported since CW
11).

What's new in this release (reverse chronological order) DR 2 + Easier
to use: there are now only two 68K libraries, one for model near and one
for model far + Improved stability: Balloon Toggler no longer crashes
when not attached to an LControl (thnx to Willis Morse, wmorse@aol.com)
  
Copyright & Legal Stuff 
Visual Balloons was developed by and is (c) Andreas Pizsa. All rights 
reserved Visual Balloons, the Visual Balloons logo, Tools & Toys and 
the Tools & Toys Logo are trademarks by Andreas Pizsa. All rights 
reseved. BalloonHelp is a trademark of Apple Computer, Inc. PowerPlant 
is a trademark of Metrowerks. 



#### BINHEX     vlist-mngr-demo-10-p.hqx   ****

From: JBREWSTER@ARSERRC.Gov
Subject: vListMngr10.sit.hqx

SUMMARY 
vListMngr is a package (source code) of Pascal routines which implement creation and
management of Lists with variable column width, and up to four lines of header
text per column.  The column headers behave like spreadsheet headings, staying
fixed on the screen while the cells scroll vertically, and tracking the columns
when cells are scrolled horizontally.  vListMngr also provides utilities for
multiple cell selection and copying and editing cell text.  The programming
interface to vListMngr is very similar to that of the standard List Manager, and
existing programs will require very little modification to incorporate the new
features.  However, this version of vListMngr does not support some standard List
Manager capabilities, such as custom LDEF's, the Search function, or selection
flags.

The archive contains a 68K demo program, documentation, and THINK Pascal source
code for vListMngr and the demo program.  The package was written to provide
flexible entry of fairly large tables of data for scientific instrument control
systems and has been tested on several 68000 - 68040 machines under System 6,
System 7.1, and System 7.5.  The code may be used, modified, and distributed
freely provided that no profit is derived therefrom and the author is duly
credited.

4/10/96
Jeff Brewster
jbrewster@arserrc.gov


#### BINHEX     voyager-emblem-cursor-109.hqx   ****

From: Furnesss@northcentral.k12.ia.us
Subject: Voyager Cursor v1.09


Voyager Cursor v1.09

This is my seventh attempt for making shareware.  This will replace your normal
boring black cursor with this nice icon of a Star Trek Voyager emblem.  I hope
you like these cursors I am making and have made in the past.

This should be compatible with any Mac, I have tested it on a variety of
different macs like Power Mac 5200, 5260 and also on LC 575-580's.  A couple of
my friends have also tried it on their machines. If you come accross any problems
just let me know at FurnessS@northcentral.k12.ia.us

Disclaimer: If anything is to happen to your Mac while you are using
this�well�too bad�becuase you cannot blame me.  You use this at your own risk.  I
have not had any problems with it, so I doubt that you will either.

This is $3 shareware, I don't think that is too much to ask, I am going to need
every little dollar to keep making stuff���if you feel generous you may pay more
but I ask that you atleast please send the $3. You can send it to:

Sylvan J. Furness 409 Main Street, P.O. Box 51 Hanlontown, Iowa 50444



Sylvan Furness




#### BINHEX     voyeur-111-c.hqx   ****

From: f8dy@netaxs.com (Mark Pilgrim)
Subject: Voyeur 1.1.1 (source code)
Date: Mon, 28 Feb 1994 13:29:08 -0500 (EST)

Voyeur 1.1.1 is a no-frills file viewer.  You may view the raw hex and ASCII
data of either fork of up to ten files at once.  Current features include
hex or ASCII find, modifying type/creator information, setting EOF of
either fork.  Version 1.1.1 fixes a bug that made "Set EOF" always return
an error.  This archive contains complete THINK C source code, project
files, and resource files.  Application also available; check ftp sites or
e-mail f8dy@netaxs.com.  Finger f8dy@netaxs.com for complete program list.
Copyright (C) 1993-4, Mark Pilgrim.  Please read enclosed file "GNU General
Public License" for licensing details.


#### BINHEX     warez-11-c.hqx   ****

From: f8dy@netaxs.com (Mark Pilgrim)
Subject: WAREZ 1.1 (source code)
Date: Thu, 17 Feb 1994 00:44:04 -0500

WAREZ is a small utility to convert text files to WAREZ talk.  Version 1.1
supports RTF files and fixes several technical bugs.  This will be the last
version of WAREZ; all future enhancements will be part of the larger text
conversion program, Dialectic.  Supports drag and drop of any number of text
files of any length.  This archive contains complete THINK C source code,
project files, and resource files.  Application also available; check ftp
sites or e-mail f8dy@netaxs.com. Finger f8dy@netaxs.com for complete program
list.  Copyright (C) 1994, Mark Pilgrim. Please read enclosed file "GNU
General Public License" for licensing details.


#### BINHEX     warp-ii-c.hqx   ****

From: kenlong@netcom.com (Ken Long)
Subject: warpii-c.sit.hqx
Date: Mon, 10 Jan 1994 18:24:25 -0800 (PST)

Mac People:

This is a simple "warp" source file, with a few variations. 5 examples of 
warp, starburst and starfield Think C projects.  The original was posted 
by Tony Mattis on DevNet.

Ken
--------------------------------------------------------------------------


#### BINHEX     waste-object-handlers-126.hqx   ****

From: hsoi@eden.com
Subject: WASTE Object Handlers 1.2.6


The WASTE Object Handlers are a companion to Marco Piovanelli's WASTE
text engine.  They require WASTE to work, and WASTE can be found at:
<http://rhino.harvard.edu/dan/waste.html>.  This C code library gives
"drop and play" functionality to your WASTE-based projects to allow
you to handle objects such as PICT's, sounds, HFS/file objects in your
WASTE documents.  Additionally, this library's handlers extend WASTE's
drag-and-drop functionality to include objects of this kind.

A must for anyone using WASTE.

For more information about the handlers, please see it's enclosed README
document (it's not THAT big to download) :)

Thanx, and enjoy!

John C. Daub
Hsoi's Shop
<http://www.eden.com/~hsoi/prog.html>



#### BINHEX     wdef-patch-21-c.hqx   ****

From: ROBERTO AVANZI 338188/SM <gandalf@sabrina.dei.unipd.it>
Subject: WDEF PAtch from apple:further changes 
Date: Mon, 22 Jun 92 11:18:03 GMT 

Hi, netters
WDEFPatch is an Apple sample code snippet that shows how to
add in a clean way a new behaviour to an existing WDEF. It adds
a new part in the window title bar that, when clicked, is reported
to the application. I implemented the tracking of that part.
In case you downloaded the improved WDEFPatch (originally from
Steve Falkenburg), in the meantime I discovered a funny quirk
in the system software WDEF. (at least, sys 7's). I found it
when adding a zoom box to the window. Falkenburg's had not, neither
did my original improvement. It can only be the system's misbehaviour
but luckily a workaround could be found very easily (and is clean).
I included the two apps. The one without workaround and one with it.
Read the source for details. Then laugh when you see what happens.
I feel my new knowledge can be useful also to others.
Enclosed is a binhexed-compactpro archive.
Roberto Avanzi.
<gandalf@sabrina.dei.unipd.it>

#### BINHEX     welcome-132.hqx   ****

From: IO92143@MAINE.maine.edu (Donna Foster)
Subject: Welcome! v1.3.2
Date:    Tue, 14 Dec 93 22:58:49 EST

Enclosed is the app and source for Welcome, an app which uses the Speech
Manager to read you the date, time, and a short message. (Run it between 6
and 12 on the 24th of December for a sample...) It's based on Welcome2,
an old app which used MacinTalk. If the author is out there somewhere, I'd
be happy to credit you....

Version 1.3.2 fixes two bugs--one appeared the week of Thanksgiving, when I
forgot to check whether I had typed == or =, and one appeared October 31,
when nothing happened. :-) This version is postcardware. Version 2.0, coming
out soon, will be customizable with ResEdit. Version 3.0, if ever, will let
you do it from within the program....


#### BINHEX     wolf-edit-source-204.hqx   ****

From: greg@cosc.canterbury.ac.nz
Subject: WolfEdit 2.0.4 Source Code


This is the Think Pascal 4 source code of WolfEdit 2.0.4.

The executable is also available from the Info-Mac
Archive.

What is WolfEdit 2?

WolfEdit 2 is a complete scenario editor for the
Macintosh version of Wolfenstein 3D. With WolfEdit 2,
not only can you design your own maps, you can replace
the artwork for walls, doors, objects, weapons and
more.

Greg Ewing
greg@cosc.canterbury.ac.nz
http://www.cosc.canterbury.ac.nz/~greg



#### TEXT       write-through-init-c.txt   ****

From: Stuart Cheshire <cheshire@cs.stanford.edu>
Subject: WriteThrough INIT source code
Date: 9 Apr 1994 17:28:11 GMT

// Disk cache bypass INIT
// Copyright (C) April 1994 Stuart Cheshire
// Should be compiled as an INIT resource
// (use the "custom header" option in Think C)

#include <Traps.h>

// I know an address should be defined as a pointer type (eg 'void *'),
// not a 'long', but Apple's Get & Set TrapAddress calls are defined to
// use longs, so it's not my fault

typedef struct { unsigned short opcode; long addr; } JmpInstruction;

typedef void ShowIconFamily(short iconId);

void main(void);

#### BINHEX     writeswell-jr-102-c.hqx   ****


#### BINHEX     zigs-greyscale-folder.hqx   ****

From: ziggr@best.com (Zig Zichterman)
Subject: Zig's Greyscale Stuff

Zig's Greyscale Stuff is a control definition (CDEF) and window 
definition (WDEF) that implement a three-dimensional look that matches 
the look documented in Apple Grayscale Appearance for System 7.5, July 
1996 Revision. There's also sample code for using the CDEF and WDEF in 
your own code.

See <http://www.best.com/~ziggr/> for the latest version.

Zig Zichterman   ziggr@best.com   http://www.best.com/~ziggr