Info-Mac Archive Downloads: dev/src/ SourceCode

Back to dev/ Development

316 files

InvertShapes 1.0.1 (ad-invert-shapes-101-c.hqx)

Download ad-invert-shapes-101-c.hqx (23,225 KB)


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


info-mac/tech/adobe-premiere-developer.hqx (adobe-premiere-developer-c.hqx)

Download adobe-premiere-developer-c.hqx (37,316 KB)


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
--------------------------------------------------------------------------------

AIFF_DSP: An AIFF File DSP Programmer's Framework in Portable C (aiff-dsp-framework-21-c.hqx)

Download aiff-dsp-framework-21-c.hqx (36,723 KB)


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


Angry Face Cursor v1.04 (angry-face-cursor-104.hqx)

Download angry-face-cursor-104.hqx (41,712 KB)


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




AZN_AppLauncher (app-launcher-cpp.hqx)

Download app-launcher-cpp.hqx (96,512 KB)


From: Andrew Nemeth
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


Demo of Dialog Manager calls in System7 (append-ditl-demo-c.hqx)

Download append-ditl-demo-c.hqx (7,765 KB)


Date: Fri, 18 Nov 1994 14:23:25 -0500
From: Marty Wachter
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.


AE Interface.pl v1.01 (apple-event-interface-plog.hqx)

Download apple-event-interface-plog.hqx (5,903 KB)


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


info-mac/UserInterface/appmenu-additions-as.hqx (application-menu-addition-as.hqx)

Download application-menu-addition-as.hqx (5,895 KB)


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
--------------------------------------------------------------------------------

ArrowCDEF (arrow-cdef-c.hqx)

Download arrow-cdef-c.hqx (42,473 KB)


From: "David J. Hay"
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--------------------|



Ars Magna II (ars-magna-ii-c.hqx)

Download ars-magna-ii-c.hqx (368,874 KB)


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"


(artabrot-11-c.hqx)

Download artabrot-11-c.hqx (213,505 KB)


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.


Pascal source code: async sound production (async-sound-sample-pas.hqx)

Download async-sound-sample-pas.hqx (98,353 KB)


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


AutoBin (a drag and drop Binhexer with source) (auto-bin-c.hqx)

Download auto-bin-c.hqx (92,816 KB)


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"


Basic Black 1.5.1 source release (basic-black-151-c.hqx)

Download basic-black-151-c.hqx (106,346 KB)


From: Mason Loring Bliss
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.


BBEdit 3.0 Extension Developer's Kit (bbedit-30-dev-kit.hqx)

Download bbedit-30-dev-kit.hqx (77,029 KB)


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


Bob15.hqx - Bob Programming Language (Think C source) (bob-15-c.hqx)

Download bob-15-c.hqx (110,339 KB)


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)
================================================================

Brailler 0.61 source (brailler-061b-c.hqx)

Download brailler-061b-c.hqx (247,556 KB)


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.


C Interpreter Source Code (c-interp-c.hqx)

Download c-interp-c.hqx (47,011 KB)


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.
---


CModalProgress class source code (c-modal-progress-cp.hqx)

Download c-modal-progress-cp.hqx (31,451 KB)


Date: Fri, 17 Feb 1995 22:33:00 -0500
From: "graham (g.) heathcote"
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.


calendar-cdef-11 (calendar-cdef-11-p.hqx)

Download calendar-cdef-11-p.hqx (51,985 KB)


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

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


CalendarMDEF 0.9 beta (calendar-mdef-09b.hqx)

Download calendar-mdef-09b.hqx (17,680 KB)


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.


/source/c/canimcursor-10b4.hqx (canimcursor-10b4-c.hqx)

Download canimcursor-10b4-c.hqx (34,329 KB)


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?



Capitalizer BBEdit Extension Source Code (capitalizer-c.hqx)

Download capitalizer-c.hqx (81,813 KB)


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


CContextualMenu 1.0 (ccontextual-menu-10.hqx)

Download ccontextual-menu-10.hqx (9,848 KB)


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






source/asm68k - CDIconKiller 1.0.0 (cd-icon-killer-100-asm68k.hqx)

Download cd-icon-killer-100-asm68k.hqx (34,271 KB)


From: Peter N Lewis
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
Peter N Lewis

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"


[*] CDEF-FJCI (two control definitions with source code) (cdef-fjci-fb.hqx)

Download cdef-fjci-fb.hqx (99,023 KB)


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."




CDEF Template 1.0 : CDEF template in C (cdef-template-10.hqx)

Download cdef-template-10.hqx (11,034 KB)


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
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)


FWD: cdev stub for CodeWarrior (cdev-stub-cw.hqx)

Download cdev-stub-cw.hqx (4,381 KB)


From: Gordon Watts -- U of Rochester
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
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"


Cellusoft-sprite-demo-c (cellusoft-graphics-demo-c.hqx)

Download cellusoft-graphics-demo-c.hqx (85,254 KB)


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-



Cellusoft Graphics Pascal (cellusoft-graphics-p.hqx)

Download cellusoft-graphics-p.hqx (140,579 KB)


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-------------------------------

ctc v1.6 src (change-type-creator-16-c.hqx)

Download change-type-creator-16-c.hqx (26,868 KB)


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"


source/pascal/chat-110.hqx (chat-11-pas.hqx)

Download chat-11-pas.hqx (51,744 KB)


Date: Sat, 12 Dec 1992 12:00:45 +0800
From: Peter N Lewis
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


Chef 1.1 (source code) (chef-11-c.hqx)

Download chef-11-c.hqx (138,182 KB)


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.


Chess++ source code (chess-cpp.hqx)

Download chess-cpp.hqx (280,853 KB)


From: Lloyd Wood
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


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


clut_fade 1.3.2 (clut-fade-131.hqx)

Download clut-fade-131.hqx (141,342 KB)


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.


ComboBox Source 1.2 (combo-box-12-c.hqx)

Download combo-box-12-c.hqx (220,679 KB)


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.


MacConics Source Code - C++ (conics-cpp.hqx)

Download conics-cpp.hqx (65,020 KB)


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++.


ControlPanel-0.9.4.sit.hqx (control-panel-094-c.hqx)

Download control-panel-094-c.hqx (135,829 KB)


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?-----------


Cdev Tester 7.0 (control-panel-tester-70-c.hqx)

Download control-panel-tester-70-c.hqx (8,373 KB)


Date: 04 Mar 1993 13:07:09 -0500 (CDT)
From: Evan Olcott
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------------

CSShell is a sample Control Strip Module project (control-strip-shell-c.hqx)

Download control-strip-shell-c.hqx (10,021 KB)


Date: Fri, 18 Nov 1994 14:21:48 -0500
From: Marty Wachter
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.


Controls GH 1.1 submission (controls-gh-cdefs-11-c.hqx)

Download controls-gh-cdefs-11-c.hqx (64,888 KB)


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"


A cookie command for the nShell (cookie-nshell.hqx)

Download cookie-nshell.hqx (12,391 KB)


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)


CopyBits Demo 3.1 (copy-bits-demo-31-c.hqx)

Download copy-bits-demo-31-c.hqx (156,570 KB)


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


CopyPaste Tools Sourcecode 1.1 (copy-paste-tools-11-p.hqx)

Download copy-paste-tools-11-p.hqx (169,944 KB)


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


CCL_1.1.cpt.hqx (core-class-library-11-cpp.hqx)

Download core-class-library-11-cpp.hqx (183,512 KB)


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").



C++: cout << (p-strings) (cout-p-strings-cpp.hqx)

Download cout-p-strings-cpp.hqx (3,967 KB)


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


CPreferences 1.0 - Class for CodeWarrior PowerPlant (cpreferences-10-cpp.hqx)

Download cpreferences-10-cpp.hqx (5,600 KB)


Date: Tue, 5 Jul 1994 21:13:02 -0700 (PDT)
From: Spencer Low
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.


Crooked Mouse 1.0 (source code) (crooked-mouse-10-c.hqx)

Download crooked-mouse-10-c.hqx (23,273 KB)


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.


CTB Connection Tool C source (ctb-tool-c.hqx)

Download ctb-tool-c.hqx (39,410 KB)


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"


CURLPushButton 2.4 - a PowerPlant class (curl-push-button-24.hqx)

Download curl-push-button-24.hqx (203,457 KB)


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




curses.sit (curses-c.hqx)

Download curses-c.hqx (56,812 KB)


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:]
---------------------------------------------

Re: [Source] Here's my own operator new for CW (custom-new-cp.hqx)

Download custom-new-cp.hqx (5,883 KB)


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


CVersCaption 1.4 - a PowerPlant class (cverscaption-14.hqx)

Download cverscaption-14.hqx (118,176 KB)


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




CW CDEV Framework 1.1.1 (cw-cdev-framework-111-cpp.hqx)

Download cw-cdev-framework-111-cpp.hqx (48,852 KB)


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!


Darth Fader 1.0 (source code) (darth-fader-10-c.hqx)

Download darth-fader-10-c.hqx (46,036 KB)


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.


DBL Pascal Lib. (dbl-library-p.hqx)

Download dbl-library-p.hqx (381,133 KB)


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-----------------------------

dcl-ANSI (all) (dcl-ansi-c.hqx)

Download dcl-ansi-c.hqx (41,473 KB)


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


DebugWindow 1.0 (debug-window-10-c.hqx)

Download debug-window-10-c.hqx (453,724 KB)


Date: Mon, 17 Apr 1995 16:57:31 -0700 (PDT)
From: Eric Gorr
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


Detect New Volume - Display volume's message-of-the-day (detect-new-volume-cpp.hqx)

Download detect-new-volume-cpp.hqx (84,136 KB)


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"


Devil's Cubes 1.0.1 (source code) (devils-cubes-101-c.hqx)

Download devils-cubes-101-c.hqx (275,237 KB)


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.


DiagramC (diagram-c.hqx)

Download diagram-c.hqx (75,618 KB)


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


Dialectic 1.2 (source code) (dialectic-12-c.hqx)

Download dialectic-12-c.hqx (128,679 KB)


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.


DialogControls11.c; Code for handling controls in dialog boxes (dialog-controls-11-c.hqx)

Download dialog-controls-11-c.hqx (46,777 KB)


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 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


DialogControls.c; dialog controls in the window font (dialog-controls-c.hqx)

Download dialog-controls-c.hqx (38,886 KB)


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 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 -
"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


DinkClass (dink-class-c.hqx)

Download dink-class-c.hqx (268,359 KB)


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"


directory_src.sit (directory-c.hqx)

Download directory-c.hqx (50,579 KB)


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.

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


DirectoryPopup 1.0.1; a code snippet (directory-popup-101.hqx)

Download directory-popup-101.hqx (48,678 KB)


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


dirent.sit.hqx (dirent-h.hqx)

Download dirent-h.hqx (28,279 KB)


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.


DisplayGraphicsKludge 1.0.2 (display-graphics-102-c.hqx)

Download display-graphics-102-c.hqx (51,228 KB)


Date: 20 Mar 1995 14:29:13 U
From: "Samuel Herschbein"
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


Dragonsmith 1.1.1 (dragonsmith-111-cp.hqx)

Download dragonsmith-111-cp.hqx (312,266 KB)


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"


Dragonsmith 1.1.1 CodeWarrior update (dragonsmith-111-cw-updt.hqx)

Download dragonsmith-111-cw-updt.hqx (61,731 KB)


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"


Driver 2.2 (driver-22-c.hqx)

Download driver-22-c.hqx (27,841 KB)


From: Pete Resnick
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


DropShell 2.0 (drop-shell-20-c.hqx)

Download drop-shell-20-c.hqx (50,970 KB)


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"


DropUNIX 1.2 (drop-unix-12.hqx)

Download drop-unix-12.hqx (85,865 KB)


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!


E-Z Progress Bar 1.0a.sit.hqx (e-z-progress-bar-10-c.hqx)

Download e-z-progress-bar-10-c.hqx (62,695 KB)


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.






earthplot-301-c (earth-plot-301-c.hqx)

Download earth-plot-301-c.hqx (166,790 KB)


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------------------------------------


Easy View 2.6 source code (easy-view-src-260.hqx)

Download easy-view-src-260.hqx (64,361 KB)


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.




Movie Import Component Source Code (eat-au-p.hqx)

Download eat-au-p.hqx (17,691 KB)


Date: Thu, 2 Dec 1993 16:07:50 +0800
From: Quinn
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"


eclectic CDEF Collection 1.0 (eclectic-cdef-collection.hqx)

Download eclectic-cdef-collection.hqx (167,191 KB)


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)




enumtypes-creators-c (enum-types-creators-c.hqx)

Download enum-types-creators-c.hqx (50,136 KB)


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----------------------------------------


[*] Scripting Addition Samples (example-scripting-additions-c.hqx)

Download example-scripting-additions-c.hqx (115,306 KB)


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"


Fantasm Creation demo.sit: (fantasm-creation-demo.hqx)

Download fantasm-creation-demo.hqx (243,321 KB)


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
******************************************************


Demo written with Fantasm (fantasm-demo-project.hqx)

Download fantasm-demo-project.hqx (243,450 KB)


Date: Tue, 14 Feb 1995 23:29:37 -0200
From: Lightsoft
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


FFTs-for-RISC-2-c (ffts-for-risc-2-c.hqx)

Download ffts-for-risc-2-c.hqx (161,947 KB)


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


Internet Config "file:" Helper (file-ic-helper.hqx)

Download file-ic-helper.hqx (5,968 KB)


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


Final Chance 1.1.1 (source code) (final-chance-111-c.hqx)

Download final-chance-111-c.hqx (45,136 KB)


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.


Finder Marquee (finder-marquee-c.hqx)

Download finder-marquee-c.hqx (14,270 KB)


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.


FinderProgressBar 2.0 : A CDEF Progress Bar. (finder-progress-bar-20-c.hqx)

Download finder-progress-bar-20-c.hqx (63,019 KB)


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
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)


finger server for system 7 (finger-server-c.hqx)

Download finger-server-c.hqx (73,605 KB)


Date: Wed, 20 Oct 1993 10:00:21 -0400 (EDT)
From: Aaron Wohl
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


Fixit (fixit-c.hqx)

Download fixit-c.hqx (40,467 KB)


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 -
---------------------------------------------------------------------


fixit (fixit.hqx)

Download fixit.hqx (39,011 KB)


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.


Fixation 1.3 (Source Code) (fixsrc-13-src-c.hqx)

Download fixsrc-13-src-c.hqx (357,320 KB)


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


Flame - 0.9 (flame-09.hqx)

Download flame-09.hqx (104,915 KB)


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


flight-simulator_v2.hqx (flight-simulator-20-c.hqx)

Download flight-simulator-20-c.hqx (58,916 KB)


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)


flight_thru_clouds - simple virtual reality w/ source and expl (flight-thru-clouds-cpp.hqx)

Download flight-thru-clouds-cpp.hqx (428,317 KB)


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

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

no subject (file transmission) (floating-windows-pas.hqx)

Download floating-windows-pas.hqx (8,456 KB)


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


source/pascal/FMenusExample.hqx (fmenus-example-pas.hqx)

Download fmenus-example-pas.hqx (23,410 KB)


Date: Tue, 24 Nov 1992 13:45:06 +0800
From: Peter N Lewis
Subject: source/pascal/FMenusExample.hqx


_______________________________________________________________________
Peter N Lewis 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.

FMenus Example v1.0.0 Copyright 1992 Peter N Lewis


Friends of Nim 1.0 source code (friends-of-nim-c.hqx)

Download friends-of-nim-c.hqx (392,947 KB)


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.


[*] Some "Frontier" Scripts & Information (frontier-scripts.hqx)

Download frontier-scripts.hqx (45,520 KB)


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

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

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

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

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


Fudd 1.0 (source code) (repost) (fudd-10-c.hqx)

Download fudd-10-c.hqx (121,455 KB)


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.


source/pascal/Isolation-rulebook.hqx (game-master-isolation-pas.hqx)

Download game-master-isolation-pas.hqx (28,233 KB)


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.


Gamma Util Pascal Library (gamma-table-11-p.hqx)

Download gamma-table-11-p.hqx (35,719 KB)


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
__________________________________________________________________


GC Frontier Snippets 1.0 (gc-frontier-snippets-10-fr.hqx)

Download gc-frontier-snippets-10-fr.hqx (68,998 KB)


Date: Sun, 13 Nov 1994 17:13:07 +0100
From: "Gary T. Czychi"
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



GetFileIcon1.1 (get-file-icon-11-c.hqx)

Download get-file-icon-11-c.hqx (63,113 KB)


Date: Sat, 18 Mar 1995 19:43:52 -0800 (PST)
From: Jeff Beeghly
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.


Ghost 1.0 (source code) (ghost-10-c.hqx)

Download ghost-10-c.hqx (508,337 KB)


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.


Ghost Mouse 1.1 (source code) (ghost-mouse-11-c.hqx)

Download ghost-mouse-11-c.hqx (21,963 KB)


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.


GLoAppFolder.sit - support for accessing application folder (glo-app-folder.hqx)

Download glo-app-folder.hqx (9,521 KB)


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.



GLoStDialAction.sit - support for live-scrolling scrollbars (glo-st-dial-action.hqx)

Download glo-st-dial-action.hqx (13,058 KB)


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.



GlueWindow4.2.1(source) A Window Utility (glue-window-421-c.hqx)

Download glue-window-421-c.hqx (41,969 KB)


Date: Sat, 25 Mar 1995 19:34:00 +0900
From: "GBH06222@niftyse"
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


Glypha III Src [arcade game source code] (glypha-iii-c.hqx)

Download glypha-iii-c.hqx (421,587 KB)


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)


GMS1.0b2 (music w/ QT2.0 library) (gms-10b2-o.hqx)

Download gms-10b2-o.hqx (22,050 KB)


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

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



libraries for port of GNU patch, diff and rcs to the Macintosh. (gmz-libraries.hqx)

Download gmz-libraries.hqx (270,685 KB)


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


GNU Bison 1.22 THINK C 6.0 port (gnu-bison-122-c.hqx)

Download gnu-bison-122-c.hqx (470,508 KB)


From: Scott Hofmann
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_


GNU Flex 2.4.6 for THINK C 6.0 (gnu-flex-246-c.hqx)

Download gnu-flex-246-c.hqx (540,993 KB)


From: Scott Hofmann
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_



GNU gdbm-1.7.3: a database manager (gnu-gdbm-173-c.hqx)

Download gnu-gdbm-173-c.hqx (420,835 KB)


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)

====================================================================

libraries for port of GNU patch, diff and rcs to the Macintosh. (gnu-patch-21.hqx)

Download gnu-patch-21.hqx (195,539 KB)


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


Go Sit In The Corner (source code) (go-sit-in-the-corner-c.hqx)

Download go-sit-in-the-corner-c.hqx (89,872 KB)


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.


GrafSys 2.0 Submission (graf-sys-20-p.hqx)

Download graf-sys-20-p.hqx (500,644 KB)


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


GrafSys 2.0 Triangle Files [part 1 of 1] (graf-sys-triangle-p.hqx)

Download graf-sys-triangle-p.hqx (3,629 KB)


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 --

Gravity Mouse 1.1 (source code) (gravity-mouse-11-c.hqx)

Download gravity-mouse-11-c.hqx (24,854 KB)


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.


Halma 1.2 (source code) (halma-12-c.hqx)

Download halma-12-c.hqx (234,430 KB)


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.


HCmdButtonAttachment 1.2.1 - A PowerPlant Class (hcmdbutton-attachment-121.hqx)

Download hcmdbutton-attachment-121.hqx (183,813 KB)


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




Headlines 1.0.1 code (headlines-101-c.hqx)

Download headlines-101-c.hqx (57,829 KB)


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


THINK Pascal Hermes Headers Files for v3.0 II (hermes-2-30-headers-p.hqx)

Download hermes-2-30-headers-p.hqx (22,102 KB)


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"


HMarqueeCaption 1.1.2 - A PowerPlant Class (hmarquee-caption-112.hqx)

Download hmarquee-caption-112.hqx (131,999 KB)


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




Hotlist2HTML version 0.7.2 source code (hotlist-to-html-072-f.hqx)

Download hotlist-to-html-072-f.hqx (11,840 KB)


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"


HQX1.hqx (hqx1.hqx)

Download hqx1.hqx (112,022 KB)


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.






HSharableResource 1.2 and HSharablePicture 1.2 - PowerPlant Cla (hsharable-resource-12.hqx)

Download hsharable-resource-12.hqx (127,851 KB)


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




Hsoi's App Shell 1.0a4 - a MacOS developer tool (hsois-app-shell-10a4.hqx)

Download hsois-app-shell-10a4.hqx (1,482,045 KB)


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




HStringList 1.1 - A PowerPlant Class (hstringlist-11.hqx)

Download hstringlist-11.hqx (181,986 KB)


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




HToggleRadioButton 1.2.2 - A PowerPlant Class (htoggle-radio-button-122.hqx)

Download htoggle-radio-button-122.hqx (123,213 KB)


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 OT sample (http-server-ot.hqx)

Download http-server-ot.hqx (148,006 KB)


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.


HyperCuber 2.0 Source Code (hyper-cuber-20-cpp.hqx)

Download hyper-cuber-20-cpp.hqx (294,746 KB)


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"


NIH Image 1.44 Source(Binhex) (image-144-pas.hqx)

Download image-144-pas.hqx (516,569 KB)


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)




Infinity Windoid WDEF 3.0 (infinity-windoid-wdef-30-c.hqx)

Download infinity-windoid-wdef-30-c.hqx (158,584 KB)


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)


FWD: INIT, globals, multisegments in CW (init-example-cw.hqx)

Download init-example-cw.hqx (7,342 KB)


From: Gordon Watts -- U of Rochester
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
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"


Internet Location CM 1.2 source (internet-loc-cm-source-12.hqx)

Download internet-loc-cm-source-12.hqx (111,602 KB)


From: Tomasz Kukielka
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/



(irc-client-c.hqx)

Download irc-client-c.hqx (145,005 KB)


Date: Fri, 23 Jul 93 13:39:08 MET DST
From: Olaf Titz

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


ircle 1.5.1 source (ircle-151-p.hqx)

Download ircle-151-p.hqx (154,417 KB)


Date: Thu, 25 Nov 93 17:39:09 MET
From: Olaf Titz
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



jGNEFilter Shell.cpt.hqx (jgne-filter-shell-c.hqx)

Download jgne-filter-shell-c.hqx (29,432 KB)


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


Jotto ][ 1.2 source code (jotto-ii-12-c.hqx)

Download jotto-ii-12-c.hqx (482,749 KB)


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.


source/c/JPEG-Convert-src10.hqx (jpeg-convert-c.hqx)

Download jpeg-convert-c.hqx (79,910 KB)


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)


KanjiCPreProcessor 1.2 (kanji-c-preprocessor-c.hqx)

Download kanji-c-preprocessor-c.hqx (6,236 KB)


From: Mikaeru
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:


Kant Generator Pro 1.3.1 source code (kant-generator-pro-131-c.hqx)

Download kant-generator-pro-131-c.hqx (445,781 KB)


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.


Disabling floppy drive (prog+source) (kill-drive-c.hqx)

Download kill-drive-c.hqx (7,949 KB)


From: Todd Wilson
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"


launch-creator.cpt - (source) get a file "double-clicked" from a running pgm (launch-creator-c.hqx)

Download launch-creator-c.hqx (4,086 KB)


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)

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

launch-creator - (source) get a file "double-clicked" from (launch-creator.hqx)

Download launch-creator.hqx (25,157 KB)


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)


libga100 (libga-100.hqx)

Download libga-100.hqx (134,282 KB)


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)


libga100 (libga-c100-c.hqx)

Download libga-c100-c.hqx (134,282 KB)


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)


Linked Lists 1.1.sit.hqx (linked-lists-11-c.hqx)

Download linked-lists-11-c.hqx (49,251 KB)


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.




little_c.hqx - a C interpreter (Think C source) (little-c.hqx)

Download little-c.hqx (113,046 KB)


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)
================================================================

Lose Your Marbles! 1.0 (source code) (lose-your-marbles-10-c.hqx)

Download lose-your-marbles-10-c.hqx (250,048 KB)


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.


lpDaemon332.src.cpt.hqx (lp-daemon-332-c.hqx)

Download lp-daemon-332-c.hqx (138,208 KB)


Date: Thu, 1 Apr 1993 09:52:57 +0800 (WST)
From: "Casper A. Boon"
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.

lpDaemon - a BSD compatible printer daemon for the mac (lp-daemon.hqx)

Download lp-daemon.hqx (0 KB)


Date: Wed, 20 Jan 1993 15:15:41 +0800 (WST)
From: "Casper A. Boon"
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:
Content-Description:


(mac-default-shell-101.hqx)

Download mac-default-shell-101.hqx (39,558 KB)


From: Brian Christensen


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/



MacGzip 1.0 sources (mac-gzip-10-c.hqx)

Download mac-gzip-10-c.hqx (648,957 KB)


From: "J.A. Gutierrez E."
Subject: MacGzip 1.0 sources

Hi

These are the C sources for MacGzip 1.0
(some bug fixes from 1.0b1)


MacGzip 1.1.1 sources (mac-gzip-111-src.hqx)

Download mac-gzip-111-src.hqx (612,513 KB)


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




Mac_Perl_418_src (mac-perl-418-c.hqx)

Download mac-perl-418-c.hqx (1,024,309 KB)


Subject: Mac_Perl_418_src
Date: Fri, 10 Mar 1995 19:08:31 +0100
From: Matthias Ulrich Neeracher

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.


MacRTrace1.8.4.2Code (MacRTrace source code resend) (mac-rtrace-1842-c.hqx)

Download mac-rtrace-1842-c.hqx (773,077 KB)


From: Gregory Ferrar
Subject: MacRTrace1.8.4.2Code (MacRTrace source code resend)
Date: Fri, 23 Jun 1995 16:40:55 -0500 (CDT)


dev/src/mac-starter-c.hqx (new version) (mac-starter-c.hqx)

Download mac-starter-c.hqx (112,265 KB)


From: David Eck
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




dev/src/mac-starter-pascal.hqx (mac-starter-p.hqx)

Download mac-starter-p.hqx (216,687 KB)


From: David Eck
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"


MacWT 0.04 (mac-wt-004-c.hqx)

Download mac-wt-004-c.hqx (347,454 KB)


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"


MacZoop 2.1b1 (mac-zoop-21b1.hqx)

Download mac-zoop-21b1.hqx (770,148 KB)


From: Tom Riley
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



emacs-20.3-mac-src-d1 (mac.hqx)

Download mac.hqx (315,619 KB)


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



source/pascal/macbinary2+100.hqx (macbinary-ii-plus-pas.hqx)

Download macbinary-ii-plus-pas.hqx (34,540 KB)


Date: Tue, 9 Feb 1993 15:36:53 +0800
From: Peter N Lewis
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.

MacBinary II+ v1.0.0 Copyright 1992-93 Peter N Lewis


MacTrackerSource1.20.cpt.hqx (macintosh-tracker-12-c.hqx)

Download macintosh-tracker-12-c.hqx (579,000 KB)


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


MADE 1.7.0 - Macintosh Application Development Essentials (made-170.hqx)

Download made-170.hqx (141,931 KB)


From: Gideon Greenspan
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/



check unix mail client (mailcheck-c.hqx)

Download mailcheck-c.hqx (203,031 KB)


Date: Wed, 20 Oct 1993 10:05:06 -0400 (EDT)
From: Aaron Wohl
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)


upload MarksmanCodeMetroCp-30.sea.hqx (marksman-30-metro-cpp-sample.hqx)

Download marksman-30-metro-cpp-sample.hqx (160,569 KB)


From: Arthur Dent
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

upload MarksmanCodeTPascal-30.sea.hqx (marksman-30-think-pascal-sample.hqx)

Download marksman-30-think-pascal-sample.hqx (152,915 KB)


From: Arthur Dent
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

Matt's Scripts (matts-scripts-as.hqx)

Download matts-scripts-as.hqx (60,687 KB)


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!

NewMaxwell-c-src (maxwell-c.hqx)

Download maxwell-c.hqx (36,758 KB)


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--------------------------------


MBarClock Source (mbar-clock-c.hqx)

Download mbar-clock-c.hqx (14,228 KB)


Date: Wed, 21 Dec 1994 11:56:26 +0800 (SST)
From: Ueda Hajime
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


nShell v1.5.0 Mega Source (mega-source-150-nshell.hqx)

Download mega-source-150-nshell.hqx (318,860 KB)


Date: Sun, 1 Jan 1995 09:36:13 -0800 (PST)
From: John Jensen
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


[*] Menu Commands Script (menu-commands-library-as.hqx)

Download menu-commands-library-as.hqx (4,131 KB)


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.



Menu Fixer 1.0 (source code) (menu-fixer-10-c.hqx)

Download menu-fixer-10-c.hqx (94,929 KB)


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.


dev/source - MenuSlide 1.1 (menu-slide-11-p.hqx)

Download menu-slide-11-p.hqx (17,930 KB)


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.


MicroAnimationDemo (Pascal source) (micro-animation-demo-p.hqx)

Download micro-animation-demo-p.hqx (17,938 KB)


From: Ingemar Ragnemalm
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


MGSW Library (migo-software-library-p.hqx)

Download migo-software-library-p.hqx (45,411 KB)


Date: Mon, 24 Apr 1995 13:11:35 +0000 (GMT)
From: Miguel Frias
Subject: MGSW Library

Hi, just to send the new version of MGSW Library for Pascal programmers.
Hope it gets there OK.

Thanks,
Miguel.


Missile Command, old game, Pascal source-code (missile-command-23p-p.hqx)

Download missile-command-23p-p.hqx (78,021 KB)


From: Ingemar Ragnemalm
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.


MoreFiles 1.4.3 (more-files-143.hqx)

Download more-files-143.hqx (244,695 KB)


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.


src/pascal - Morpion 1.0.0 (morpion-100-p.hqx)

Download morpion-100-p.hqx (56,234 KB)


From: Peter N Lewis
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.

Morpion v1.0.0 Copyright 1993 Peter N Lewis


Mousebroken 1.0.1 (source code) (mouse-broken-101-c.hqx)

Download mouse-broken-101-c.hqx (233,531 KB)


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.


Move to shadow 1.3.5; an AppleScript for Info-Mac archiving (move-to-shadow-135-as.hqx)

Download move-to-shadow-135-as.hqx (55,599 KB)


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.


MPEG Audio for Mac Source (mpeg-audio-033-src.hqx)

Download mpeg-audio-033-src.hqx (83,871 KB)


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


MSG Demo 1.4 (source code) (msg-14-demo-c.hqx)

Download msg-14-demo-c.hqx (468,032 KB)


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.


MultiSession 1.04 source code (multisession-104-c.hqx)

Download multisession-104-c.hqx (504,370 KB)


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!


source/pascal - MungeImage 1.2.0 Source (munge-image-120-p.hqx)

Download munge-image-120-p.hqx (77,995 KB)


Date: Mon, 15 Aug 1994 20:17:38 +0800
From: Quinn
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!"
Peter N Lewis



--========================_9114232==_
Content-Type: application/mac-binhex40; name="MungeImage_Source_1.2.0.sit"
Content-Disposition: attachment; filename="MungeImage_Source_1.2.0.sit"


mymenv-notify - a classlib for a few Mac chores (source) (my-menv-notify-c.hqx)

Download my-menv-notify-c.hqx (43,416 KB)


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)


Telnet2.6.1d1 Source Code (ncsa-mac-telnet-261d1-c.hqx)

Download ncsa-mac-telnet-261d1-c.hqx (891,693 KB)


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.


NetCacheResolver 0.9d6 source (net-cache-resolver-09d6-c.hqx)

Download net-cache-resolver-09d6-c.hqx (79,530 KB)


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


[*] NetRPG 1.06 Source code (net-rpg-106-p.hqx)

Download net-rpg-106-p.hqx (342,237 KB)


From: Erich Bratton
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




NeuroSim 1.0.1 Source Code (neuro-sim-101-cp.hqx)

Download neuro-sim-101-cp.hqx (119,830 KB)


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...


New Watch 2.1 (Pascal source) (new-watch-21-p.hqx)

Download new-watch-21-p.hqx (16,234 KB)


From: Ingemar Ragnemalm
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.


NIH-Image.149_source.hqx (8600 lines = 558907 bytes) (nih-image-149-c.hqx)

Download nih-image-149-c.hqx (559,037 KB)


From: salzman@Athena.MIT.EDU
Date: Wed, 31 Mar 93 21:57:15 -0500
Subject: NIH-Image.149_source.hqx (8600 lines = 558907 bytes)


NoExit.hqx (no-exit.hqx)

Download no-exit.hqx (12,722 KB)


From: "STUART KOHLER.....X2175"
Subject: NoExit.hqx
Date: Sat, 02 Jul 1994 20:50:44 -0500 (EST)

contains handlers preventing exit from or changes to stack without password.
****************************************************************************

nShell-Pro Application Source (nshell-pro-c.hqx)

Download nshell-pro-c.hqx (150,351 KB)


Date: Mon, 5 Jun 1995 05:25:27 -0700 (PDT)
From: John Jensen
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


nShell v1.5.0 CodeWarrior Examples (nshell-sample-c.hqx)

Download nshell-sample-c.hqx (30,755 KB)


Date: Sun, 1 Jan 1995 14:23:28 -0800 (PST)
From: John Jensen
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


nShell v1.5.0 Pascal Examples (nshell-sample-p.hqx)

Download nshell-sample-p.hqx (39,666 KB)


Date: Sun, 1 Jan 1995 14:25:44 -0800 (PST)
From: John Jensen
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


NString 1.0 beta - A dynamic string class for C++ programmers (Development/Sources) (nstring-10b-cpp.hqx)

Download nstring-10b-cpp.hqx (68,933 KB)


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.


Nuntius1.1.src.sea.hqx (nuntius-11-c.hqx)

Download nuntius-11-c.hqx (592,156 KB)


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



Offscreen Toys (Boost) 1.3 (Pascal source) (offscreen-toys-13-demo-p.hqx)

Download offscreen-toys-13-demo-p.hqx (35,537 KB)


From: Ingemar Ragnemalm
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


AZN_OSARunner (osa-runner-cpp.hqx)

Download osa-runner-cpp.hqx (71,274 KB)


From: Andrew Nemeth
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


OTChat 3.0.2 CW11 Pascal Source Code (ot-chat-302-sources.hqx)

Download ot-chat-302-sources.hqx (189,512 KB)


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




OTCFM68KGlue abstract (otcfm-68k-glue.hqx)

Download otcfm-68k-glue.hqx (287,063 KB)


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.





Painted Black 0.91ß source kit (painted-black-091b-c.hqx)

Download painted-black-091b-c.hqx (42,525 KB)


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


Portable Patmos source update (patmos-11-c.hqx)

Download patmos-11-c.hqx (858,810 KB)


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


Submission of MacPDB2POV (pdb-to-pov-c.hqx)

Download pdb-to-pov-c.hqx (69,731 KB)


Date: Fri, 25 Aug 1995 18:22:33 +1100
From: Richard Rothwell
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


PeekaBoo AD module 1.1.2 (peek-a-boo-112-ad-c.hqx)

Download peek-a-boo-112-ad-c.hqx (710,293 KB)


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


Pentominoes 2.0 source code (pentominoes-20-c.hqx)

Download pentominoes-20-c.hqx (560,719 KB)


From: Mark Pilgrim
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.


Persisteance of Vision raytracer for the Mac from (persistence-of-vision-22.hqx)

Download persistence-of-vision-22.hqx (695,375 KB)


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"


picCDEF (pic-control-cdef.hqx)

Download pic-control-cdef.hqx (51,076 KB)


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.


Pict2Ascii-1.03-src.sit (pict-2-ascii-103-src.hqx)

Download pict-2-ascii-103-src.hqx (132,158 KB)


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.




PictTool (picttool.hqx)

Download picttool.hqx (101,341 KB)


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



Pioneer Cursor v1.03 (pioneer-cursor-103.hqx)

Download pioneer-cursor-103.hqx (41,737 KB)


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




PixMaps11.hqx (pix-maps-11.hqx)

Download pix-maps-11.hqx (175,045 KB)


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.




PlainText source + improved TE32K (plain-text-121-c.hqx)

Download plain-text-121-c.hqx (161,517 KB)


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

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

Plugin Filter source code (plugins-source.hqx)

Download plugins-source.hqx (1,323,104 KB)


From: Timothy Wall
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



PopupCDEF-10b5.hqx (popup-cdef-10b5-c.hqx)

Download popup-cdef-10b5-c.hqx (167,043 KB)


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.


PopupMenu-Tester-100-c-src.sit.hqx (popup-menu-tester-100-c.hqx)

Download popup-menu-tester-100-c.hqx (7,155 KB)


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"


PRAM-Reader V1.2 Source Code (pram-reader-12-p.hqx)

Download pram-reader-12-p.hqx (8,927 KB)


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)


PRAM save/restore (pram-save-restore-c.hqx)

Download pram-save-restore-c.hqx (155,035 KB)


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.

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

PrfFileSDK 0.2 (prf-file-sdk-02.hqx)

Download prf-file-sdk-02.hqx (314,766 KB)


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


ProTracker-source.sit.hqx (pro-tracker-asm.hqx)

Download pro-tracker-asm.hqx (373,874 KB)


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



--========================_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 , 9/7/93



--========================_6712356==_
Content-Type: application/mac-binhex40; name="ProTracker-source.sit"


Updated source to MovieToolBox (qt-movie-toolbox-11-c.hqx)

Download qt-movie-toolbox-11-c.hqx (64,781 KB)


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"


Rebuild Projects - THINK C Development Script (rebuild-projects-11-as.hqx)

Download rebuild-projects-11-as.hqx (18,224 KB)


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.


source/C - RegionToRectangles (region-to-rectangles-c.hqx)

Download region-to-rectangles-c.hqx (10,634 KB)


From: Hugh Fisher
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-----------------

ResComparePatcher 1.0 - use ResCompare to patch fat apps! (res-compare-patcher-10-c.hqx)

Download res-compare-patcher-10-c.hqx (6,021 KB)


Date: Fri, 25 Aug 1995 19:05:23 +1000 (EST)
From: Victor Tan
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.


RFC 1123 (822) date formatter (C source code) (rfc-1123-822-date-formatter-c.hqx)

Download rfc-1123-822-date-formatter-c.hqx (14,103 KB)


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"


Roidz 0.9a Source Code (roidz-09a-src.hqx)

Download roidz-09a-src.hqx (1,331,704 KB)


From: "Pigeon ^_^"
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.



Program for the Archives (rotate-ppc-01d1-c.hqx)

Download rotate-ppc-01d1-c.hqx (60,936 KB)


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

---


Rotation; a 3D graphics rotation program (rotation-c.hqx)

Download rotation-c.hqx (37,675 KB)


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"


SafeAlert.c - C source code for automatic background/foreground (safe-alert-10-c.hqx)

Download safe-alert-10-c.hqx (133,722 KB)


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


Sample LDEFs + Source (sample-ldefs-20.hqx)

Download sample-ldefs-20.hqx (104,055 KB)


Date: Tue, 27 Jun 1995 18:49:11 -0400
From: Matt Slot
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


Sample SCSI code (sample-scsi-code.hqx)

Download sample-scsi-code.hqx (27,622 KB)


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).



ScreenFlip 1.5 Src [Screensaver Module source code] (screen-flip-15-ad-c.hqx)

Download screen-flip-15-ad-c.hqx (74,739 KB)


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)


ScrollSource; scrolling lists w/out the List Manager (source) (scroll-c.hqx)

Download scroll-c.hqx (39,092 KB)


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"


seer / localtalk / records all packets (seer.hqx)

Download seer.hqx (320,879 KB)


Date: Wed, 20 Oct 1993 14:15:21 -0400 (EDT)
From: Aaron Wohl
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.


SendToBack FKEY 1.0 Source (send-to-back-source.hqx)

Download send-to-back-source.hqx (22,433 KB)


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/



/source/pascal/SFGetFolderP.hqx (sf-get-folder-p-pas.hqx)

Download sf-get-folder-p-pas.hqx (16,108 KB)


Date: Mon, 11 Jan 1993 13:51:59 +0800
From: Peter N Lewis
Subject: /source/pascal/SFGetFolderP.hqx


SFGetFolderP, Pascal version

This is a pascal version of Ken Kirksey's ,
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.


ShowInitIcon 1.0.1 - displaying INIT icons (show-init-icon-101-c.hqx)

Download show-init-icon-101-c.hqx (13,936 KB)


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


Shutdown Fade 1.0 (source code) (shutdown-fade-10-c.hqx)

Download shutdown-fade-10-c.hqx (45,375 KB)


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.


Shutdown FX 2.1 (source code) (shutdown-fx-21-c.hqx)

Download shutdown-fx-21-c.hqx (440,363 KB)


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..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.


Shutter 1.0 (to archive) (shutter-10-src-c.hqx)

Download shutter-10-src-c.hqx (46,996 KB)


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.




simple-breakout-source-p (simple-breakout-src-updt-p.hqx)

Download simple-breakout-src-updt-p.hqx (661,661 KB)


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


Sleep Deprivation 1.1 (source code) (sleep-deprivation-11-c.hqx)

Download sleep-deprivation-11-c.hqx (126,459 KB)


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).


Smiley Cursor v1.07 (smiley-face-cursor-107.hqx)

Download smiley-face-cursor-107.hqx (41,072 KB)


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



sound-at-random.cpt - (source & bin) pick a sound at random and yell it (sound-at-random-c.hqx)

Download sound-at-random-c.hqx (84,336 KB)


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]

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

Source Tools 1.0 (source-tools.hqx)

Download source-tools.hqx (166,570 KB)


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.


source/c - Speech Manager demo program (speech-manager-explorer.hqx)

Download speech-manager-explorer.hqx (27,885 KB)


From: Alexander W. Kourakos
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.

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

my speech object (5 hours small unit, I'm getting better) (speech-unit-p.hqx)

Download speech-unit-p.hqx (10,403 KB)


From "PAUL M SHELDON " Thu Sep 2 10:50:08 1993
Date: Thu, 2 Sep 1993 10:23:13 -0500
From: PAUL M SHELDON
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:
Content-Description:


Speedy Mouse 1.2 (source code) (speedy-mouse-12-c.hqx)

Download speedy-mouse-12-c.hqx (33,658 KB)


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.


[*] SpinCursor Library 1.01 (spin-cursor-101-c.hqx)

Download spin-cursor-101-c.hqx (100,385 KB)


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

Spinning Cursor Library (code) (spinning-cursor-c.hqx)

Download spinning-cursor-c.hqx (23,013 KB)


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... :-)



StandardGetAnything.c 1.0.1 (standard-get-anything-c.hqx)

Download standard-get-anything-c.hqx (19,616 KB)


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)


Startup Screen Picker 1.2 (source code) (startup-screen-picker-12-c.hqx)

Download startup-screen-picker-12-c.hqx (92,082 KB)


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.


Standard Get Folder C Code (std-get-folder-c.hqx)

Download std-get-folder-c.hqx (18,502 KB)


Date: Sat, 6 Jun 92 21:31:06 CDT
From: Kenneth B. Kirksey
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.


Stoned Mouse 1.0 (source code) (stoned-mouse-10-c.hqx)

Download stoned-mouse-10-c.hqx (23,161 KB)


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.


StrList4 (str-list-4.hqx)

Download str-list-4.hqx (33,925 KB)


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/




Streamer.hqx (streamer-c.hqx)

Download streamer-c.hqx (105,410 KB)


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


Strip68K and StripPPC (strip-fat-c.hqx)

Download strip-fat-c.hqx (118,469 KB)


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 ---

strlist3 (strlist3-c.hqx)

Download strlist3-c.hqx (36,800 KB)


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.


A mini drag-and-drop archiver (stuff-c.hqx)

Download stuff-c.hqx (58,353 KB)


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"


Thread Manager Utility source code (stus-thread-utilities-c.hqx)

Download stus-thread-utilities-c.hqx (23,487 KB)


From: Stuart Cheshire
Subject: Thread Manager Utility source code
Date: Sat, 19 Mar 1994 17:33:35 -0800

// StuUsThreadUtils
//
// (C) 6th March 1994 Stuart Cheshire
//

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
* WWW
* Stanford Distributed Systems Group Research Assistant
* Escondido Village Resident Computer Coordinator
* Macintosh Programmer


UPLOADING suntar1.3.2src.cpt.hqx (suntar-132-c.hqx)

Download suntar-132-c.hqx (372,097 KB)


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]


AZN_SuperSplash (super-splash-cpp.hqx)

Download super-splash-cpp.hqx (141,633 KB)


From: Andrew Nemeth
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


Think C commToolbox stuff (surfer-c.hqx)

Download surfer-c.hqx (51,893 KB)


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<---------

The Swarm 1.5 Src [Screensaver Module source code] (swarm-15-ad-c.hqx)

Download swarm-15-ad-c.hqx (100,510 KB)


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)


SysMenu 1.4 - Sample C Project + Source (sys-menu-14-c.hqx)

Download sys-menu-14-c.hqx (33,308 KB)


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



SysMenu Sample Source (system-menu-c.hqx)

Download system-menu-c.hqx (237,439 KB)


Date: Thu, 27 Jul 1995 01:34:00 -0400
From: Matt Slot
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


TTidyApplication - A leak detector for MacApp (t-tidy-applciation-cpp.hqx)

Download t-tidy-applciation-cpp.hqx (28,002 KB)


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"


source/pascal/talk-106-source.hqx (talk-106-pas.hqx)

Download talk-106-pas.hqx (223,677 KB)


Date: Sat, 25 Apr 1992 13:07:01 +0800
From: Peter N Lewis
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.

Talk 1.0.6 & Talkd 1.0.6 Copyright 1992, Peter N Lewis

Talking Clock - Source Code! 1.0b1 (talking-clock-10b1-c.hqx)

Download talking-clock-10b1-c.hqx (75,800 KB)


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

Talking Clock Pro 2.0.1 source (talking-clock-pro-201-c.hqx)

Download talking-clock-pro-201-c.hqx (466,866 KB)


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 :-)


Tar 4.0b Source (tar-40b-c.hqx)

Download tar-40b-c.hqx (59,360 KB)


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)


Task Manager 2.2.1 (task-manager-221-c.hqx)

Download task-manager-221-c.hqx (50,345 KB)


Date: 22 Jun 92 10:31:23 U
From: "Michael Hecht"
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



source/pascal/TaskManager-211P.hqx (task-manager-pas.hqx)

Download task-manager-pas.hqx (43,881 KB)


Date: Tue, 24 Nov 1992 14:05:12 +0800
From: Peter N Lewis
Subject: source/pascal/TaskManager-211P.hqx


_______________________________________________________________________
Peter N Lewis 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.

Task Manager v2.2.1P Copyright 1990-92 Michael Hecht


Tax FKEY 1.0.1 (tax-101-fkey-p.hqx)

Download tax-101-fkey-p.hqx (15,712 KB)


From: HE KUER
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!!


TCL 2.0.6 Update Available (tcl-206-updt.hqx)

Download tcl-206-updt.hqx (878,190 KB)


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:

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



bug reports should be sent to



Tom Emerson
tree@bedford.symantec.com


/source/c/tcl-terminalpane-10.sit (tcl-terminalpane-10.hqx)

Download tcl-terminalpane-10.hqx (13,097 KB)


Date: Tue, 17 Aug 1993 14:34:08 -0600
From: Eric Scouten
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.


tcp++.lib-1.0 (tcp-10-lib-cpp.hqx)

Download tcp-10-lib-cpp.hqx (121,046 KB)


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


source/pascal/tcpexample.hqx (tcp-interface-example-pas.hqx)

Download tcp-interface-example-pas.hqx (41,636 KB)


Date: Thu, 10 Dec 1992 11:27:56 +0800
From: Peter N Lewis
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.

TCPExample v1.0.0 Copyright 1992 Peter N Lewis


source/pascal - TCPOOExample 1.0.0 (tcp-oo-example-10.hqx)

Download tcp-oo-example-10.hqx (44,226 KB)


Date: Thu, 1 Jul 1993 15:07:21 +0800
From: Peter N Lewis
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.

TCPOOExample v1.0.0 Copyright 1993 Peter N Lewis


TE32K 1.2a (C Source code & demo app) (te32k-12a-c.hqx)

Download te32k-12a-c.hqx (177,097 KB)


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 . This version is
an upgrade made by Michael Lowe 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"


TetrisLight-src.cpt.hqx (Part 1/2) (tetris-light-c.hqx)

Download tetris-light-c.hqx (119,822 KB)


From: Hoylen Sue
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---

Text Editor Deluxe 1.5 Source Code (text-editor-dlx-15-src.hqx)

Download text-editor-dlx-15-src.hqx (537,240 KB)


From: "Jonathyn Bet'nct"
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



Think C dcmd 1.0.1 (think-dcmd-101-c.hqx)

Download think-dcmd-101-c.hqx (40,763 KB)


Date: Wed, 7 Sep 1994 10:43:38 +0200
From: Patrick Stadelmann
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
Feel free to contact me if you have comments, suggestions or
bugs to report.

Patrick


ThreadLibrary-1.0 (thread-library-11-c.hqx)

Download thread-library-11-c.hqx (421,272 KB)


From: "Ari I. Halberstadt"
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.


3D Buttons 1.0b6 (three-d-buttons-10b6-cdef.hqx)

Download three-d-buttons-10b6-cdef.hqx (112,110 KB)


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


3pointplotters-c (three-point-plotters-c.hqx)

Download three-point-plotters-c.hqx (88,054 KB)


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'!------------------------------------


3D Game Machine Demo description (threed-game-machine-demo.hqx)

Download threed-game-machine-demo.hqx (438,397 KB)


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 !


TimGA 1.2 Source Code (PowerPlant/C++) (tim-ga-12-source.hqx)

Download tim-ga-12-source.hqx (247,035 KB)


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...




TimGA 1.2.1 Source Code (PowerPlant/C++) (tim-ga-121-source.hqx)

Download tim-ga-121-source.hqx (224,729 KB)


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 ]]




TinyTools (tiny-tools.hqx)

Download tiny-tools.hqx (315,439 KB)


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/





Toolbox Keyword List for Metrowerks CodeWarrior CW5 (toastys-keyword-list-rsrc.hqx)

Download toastys-keyword-list-rsrc.hqx (15,103 KB)


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


TransSkel Pascal 2.5; Pascal library with source code. (trans-skel-25-p.hqx)

Download trans-skel-25-p.hqx (375,763 KB)


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.


TTidyApplication - A leak detector for MacApp (ttidy-application-cpp.hqx)

Download ttidy-application-cpp.hqx (41,889 KB)


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"


dev - TurboTCP update (again) (turbo-tcp-201-cpp.hqx)

Download turbo-tcp-201-cpp.hqx (452,620 KB)


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"


Twist 1.0 Screensaver Source Code (twist-10-c.hqx)

Download twist-10-c.hqx (155,634 KB)


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


UResourceParser (resource parsing in C++) (u-resource-parser-cpp.hqx)

Download u-resource-parser-cpp.hqx (20,875 KB)


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


Ultimate Button CDEF 1.0.2 - Source Code (ultimate-button-cdef.hqx)

Download ultimate-button-cdef.hqx (32,936 KB)


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


Submission of "Ultra" Random-Number Library (ultra-c.hqx)

Download ultra-c.hqx (14,089 KB)


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"


(url-helper-10d1.hqx)

Download url-helper-10d1.hqx (273,399 KB)


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.


uupc 3.1 source code [part 1 of 11] (uupc-31-c.hqx)

Download uupc-31-c.hqx (245,404 KB)


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 --


A better flight-thru-clouds (Venus 3.5, a simple VR thing) (venus-35.hqx)

Download venus-35.hqx (486,204 KB)


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





Visual Balloons for PowerPlant (visual-balloons-dr-2.hqx)

Download visual-balloons-dr-2.hqx (76,899 KB)


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.



vListMngr10.sit.hqx (vlist-mngr-demo-10-p.hqx)

Download vlist-mngr-demo-10-p.hqx (79,079 KB)


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


Voyager Cursor v1.09 (voyager-emblem-cursor-109.hqx)

Download voyager-emblem-cursor-109.hqx (42,513 KB)


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




Voyeur 1.1.1 (source code) (voyeur-111-c.hqx)

Download voyeur-111-c.hqx (174,028 KB)


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.


WAREZ 1.1 (source code) (warez-11-c.hqx)

Download warez-11-c.hqx (123,517 KB)


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.


warpii-c.sit.hqx (warp-ii-c.hqx)

Download warp-ii-c.hqx (64,291 KB)


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
--------------------------------------------------------------------------


WASTE Object Handlers 1.2.6 (waste-object-handlers-126.hqx)

Download waste-object-handlers-126.hqx (95,856 KB)


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:
. 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




WDEF PAtch from apple:further changes (wdef-patch-21-c.hqx)

Download wdef-patch-21-c.hqx (18,413 KB)


From: ROBERTO AVANZI 338188/SM
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.


Welcome! v1.3.2 (welcome-132.hqx)

Download welcome-132.hqx (21,443 KB)


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....


WolfEdit 2.0.4 Source Code (wolf-edit-source-204.hqx)

Download wolf-edit-source-204.hqx (456,802 KB)


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



(writeswell-jr-102-c.hqx)

Download writeswell-jr-102-c.hqx (290,060 KB)