home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tricks of the Mac Game Programming Gurus
/
TricksOfTheMacGameProgrammingGurus.iso
/
Information
/
CSMP Digest
/
volume 1
/
csmp-v1-122.txt
< prev
next >
Encoding:
Amiga
Atari
Commodore
DOS
FM Towns/JPY
Macintosh
Macintosh JP
NeXTSTEP
RISC OS/Acorn
Shift JIS
UTF-8
Wrap
Text File
|
1994-12-08
|
41.8 KB
|
1,132 lines
|
[
TEXT/R*ch
]
C.S.M.P. Digest Tue, 23 Jun 92 Volume 1 : Issue 122
Today's Topics:
Summary: prefs
desperatly seeking fortran
Text to Speech
Newline Mode
PBCatSearch Problems...
X-lisp
How to handle more than 32k of text ?
MPW setup
Mac TCP APIs -- what/where are they?
The Comp.Sys.Mac.Programmer Digest is moderated by Michael A. Kelly.
These digests are available (by using FTP, account anonymous, your email
address as password) in the pub/mac/csmp-digest directory on ftp.cs.uoregon.
edu. This is also the home of the comp.sys.mac.programmer Frequently Asked
Questions list. The last several issues of the digest are available from
sumex-aim.stanford.edu as well.
These digests are also available via email. Just send a note saying that you
want to be on the digest mailing list to mkelly@cs.uoregon.edu, and you will
automatically receive each new digest as it is created.
The digest is a collection of articles from the internet newsgroup comp.sys.
mac.programmer. It is designed for people who read c.s.m.p. semi-regularly
and want an archive of the discussions. If you don't know what a newsgroup
is, you probably don't have access to it. Ask your systems administrator(s)
for details. (This means you can't post questions to the digest.)
The articles in these digests are taken directly from comp.sys.mac.programmer.
They are not edited; all articles included in this digest are in their original
posted form. The only articles that are -not- included in these digests are
those which didn't receive any replies (except those that give information
rather than ask a question). All replies to each article are concatenated
onto the original article in the order in which they were received. Article
threads are not added to the digests until the last article added to the
thread is at least one month old (this is to ensure that the thread is dead
before adding it to the digests).
Send administrative mail to mkelly@cs.uoregon.edu.
-------------------------------------------------------
From: jryan@adobe.com (Jim Ryan)
Subject: Summary: prefs
Organization: Adobe Systems Incorporated
Date: Mon, 18 May 1992 21:26:47 GMT
Here's the Think C code I came up with to read/write my prefs; it appears
to work fine under 6 ot 7. Thanks to all who gave helped out! This
code could have more error checking, andprobably should if it were going
to be a commercial app, but in my case it's just a little point conversion
utility to save me some time whenformatting/outputting to an imagesetter
(yes, I'm a graphic artist, not a programmer... at least this is the
case today... this programming stuff isa blast!). Please post if you
have any comments/suggestions, or see any obvious bugs.
Also, thanks to Jamie McCarthy who sent me his TLC prefs class that I'll
definitely use next time... live and learn! :)
//---------------------------------------------------------------------------
// this is my struct where the pref values are stored
typedef struct {
int value1, value2, value3, etc...;
} prefSettings;
extern prefSettings gPrefStruct;
//---------------------------------------------------------------------------
// this function gets the prefs when launching. Note: I check for compatible
systems prior to this
void GetPrefs(void) // gets prefs from prefs file
{
OSErr theOSError;
int theSysVRefNum, theFileRefNum, theError;
long int theDirID;
Handle resHandle;
// find Preference folder
FindFolder(kOnSystemDisk, kPreferencesFolderType,
kCreateFolder, &theSysVRefNum, &theDirID);
// open prefs file
theFileRefNum = HOpenResFile(theSysVRefNum, theDirID, "\pThePrefs Prefs",
fsCurPerm);
if (ResError() == 0) {
// get the resource so we can play with it
resHandle = GetResource('STUF', 128);
if (resHandle != nil) {
// get info from the resource and place it in the prefs struct
HLock(resHandle);
BlockMove(*resHandle, (Ptr)&gPrefStruct, (long) sizeof(prefSettings));
HUnlock(resHandle);
}
else {
TheErrorHandler(PREFS_ERROR);
SetDefaults();
}
// close the prefs file
CloseResFile(theFileRefNum);
// this goes off to another function (which is not included with this code
snipet) to check and make sure I got good data
DoPrefsCheck();
}
// if no prefs file, or problem, set defaults (another non-included function)
else {
SetDefaults();
}
}
//--------------------------------------------------------------------------
// this function writes the prefs out when quitting the app. Note: I toss
the old prefs each time, which could be a real pig if the prefs values were
complex... "you make the call."
void WritePrefs(void) // write out prefs file before quiting
{
OSErr theOSError;
int theSysVRefNum, theFileRefNum, theError;
long int theDirID;
Handle resHandle;
// set Handle to struct size
resHandle = NewHandle(sizeof(gPrefStruct));
// find Preference folder
FindFolder(kOnSystemDisk, kPreferencesFolderType,
kCreateFolder, &theSysVRefNum, &theDirID);
// always remove old prefs
HDelete(theSysVRefNum, theDirID, "\pThePrefs Prefs");
// always create new prefs file
theOSError = HCreate(theSysVRefNum, theDirID, "\pThePrefs Prefs",
'PTOP', 'pprf');
if (theOSError == noErr) {
//create resource fork in the prefs file
HCreateResFile(theSysVRefNum, theDirID, "\pThePrefs Prefs");
// open prefs file
theFileRefNum = HOpenResFile(theSysVRefNum, theDirID,
"\pPoint2Point Prefs", fsCurPerm);
if (ResError() == 0) {
// add a resourse to the prefs file
AddResource(resHandle, 'STUF', 128, "\pprefs");
if (ResError() == 0) {
// get the resource so we can play with it
resHandle = GetResource('STUF', 128);
// toss the prefs struct info into the resource
HLock(resHandle);
BlockMove((Ptr)&gPrefStruct, *resHandle, (long) sizeof(prefSettings));
HUnlock(resHandle);
// let the resource manager know we're done playing
ChangedResource(resHandle);
WriteResource(resHandle);
ReleaseResource(resHandle);
// close the prefs resource file
CloseResFile(theFileRefNum);
}
}
}
}
---------------------------
From: space@alessia.dei.unipd.it (Simone Bettini)
Subject: desperatly seeking fortran
Organization: D.E.I. Universita' di Padova (Italy)
Date: Wed, 20 May 1992 12:24:10 GMT
Hello!!
Does anybody know if exists a Fortran Compiler for mac running under sys 7,
possibly Public Domain ???
Thanks in advance
SPACE
Space:
Simone Bettini
via Umberto I, 20
35040 S.Margherita d'Adige (PD)
Italy
E-mail address space@alessia.dei.unipd.it
+++++++++++++++++++++++++++
From: walsteyn@fys.ruu.nl (Fred Walsteijn)
Date: 22 May 92 08:45:18 GMT
Organization: Physics Department, University of Utrecht, The Netherlands
In <1992May20.122410.21969@sabrina.dei.unipd.it> space@alessia.dei.unipd.it (Simone Bettini) writes:
>Hello!!
>Does anybody know if exists a Fortran Compiler for mac running under sys 7,
>possibly Public Domain ???
I only know of the following commercial products:
1. Language Systems Fortran 3.0, runs in the MPW Shell. I use this compiler.
2. Absoft MacFortran II, runs in the MPW Shell too.
I don't know if the standalone Absoft MacFortran/020 is still supported.
3. MacTran, standalone compiler/editor/...
- -----------------------------------------------------------------------------
Fred Walsteijn | Internet: walsteyn@fys.ruu.nl
Institute for Marine and Atmospheric Research | FAX: 31-30-543163
Utrecht University, The Netherlands | Phone: 31-30-533169
---------------------------
From: lim@iris.ucdavis.edu (Lloyd Lim)
Subject: Text to Speech
Date: 20 May 92 12:14:04 GMT
Organization: U.C. Davis - Department of Computer Science
I noticed in the WWDC schedule I got that an upcoming Text to Speech
Manager was discussed. Can someone fortunate (and rich) enough to go
to WWDC comment on this?
+++
Lloyd Lim Internet: lim@cs.ucdavis.edu
224 Lysle Leach Hall America Online: LimUnltd
U.C. Davis AppleLink: LimUnltd
Davis, CA 95616 CompuServe: 72647,660
+++++++++++++++++++++++++++
From: mxmora@unix.SRI.COM (Matt Mora)
Date: 21 May 92 16:07:23 GMT
Organization: SRI International, Menlo Park, California
In article <13470@ucdavis.ucdavis.edu> lim@iris.ucdavis.edu (Lloyd Lim) writes:
>I noticed in the WWDC schedule I got that an upcoming Text to Speech
>Manager was discussed. Can someone fortunate (and rich) enough to go
>to WWDC comment on this?
>+++
>Lloyd Lim Internet: lim@cs.ucdavis.edu
Here is the report I sent to my boss that was kind enough to let me go
to the WWDC despite our group's financial situation, so its kind of watered
down and not to technical. Unfortunatly I lost my notes so this was all from
(failing) memory. I probably left out a lot of good stuff and got some of
the numbers wrong. But I think you'll get the idea.
Matt
____________________________________________________________________________
Trip report of the World Wide Developers Conference
____________________________________________________________________________
There is a lot of new stuff coming out of Apple in the next few months.
Below are the key technologies. This is just a quick report off the top of
my head. I will try and put together a better one when I bring in all the
material I collected.
Hardware:
CD ROM drives will be an internal option on new CPU's.
More Macs with 68040 processors with DSP chips.
Power PC and a RISC based Mac. They showed a stock LC modified by adding a
RISC chip and emulation software. The demo was running Microsoft excel.
( you know it works if it can run any Microsloth Application) :-)
Hardware based DiskArray capable of transferring 80 megabytes (not bits!)
per second (software based arrray was slower but still impressive). That is
the equivalent of transferring the contents of two full 40 meg hard drives
in one second. Of course, this data transfer rate overpowers the CPU bus so
they had to come up with a new way of getting the data into the machine.
Hence the release of QuickRing . A new data bus for Nubus cards cabable
handling this data overload.
Wireless AppleTalk network was demoed. They transferred a file via
applefileshare from a powerbook to the demo Mac.
WorldScript:
Support of all languages including 2 bytes per character scripts like Kanji
and Arabic. This will allow world wide release of system software without
the normal delays in localization for the specific countries.
QuickDraw GX:
The new version of QuickDraw based on vectors and objects instead of
bitmaps. Its designed to image to any resolution (not just 72 dot per inch)
and to any device. Everything is an object and all kinds of transformations
can be done to object like stretching, skewing, perspective and rotations.
Text is an object like any other object in GX and all the transformations
can be applied to text as well.
Line Layout Manger & New Fonts:
A typographer dream come true. All fonts are handled properly (TrueType and
Type 1). Line Layout Manager handles all the details of vertical or
horizontal text. Also handle text on a path or rotated in any direction.
Any Font and any Script system. Real small caps. Optical centering.
Automatic handling of ligatures. Drop Caps. Multiple baselines , ascenders
and descenders. This stuff was amazing.
New Printing Architecture:
Based on QuickDraw GX, the new print manager will finally make printing as
easy as its supposed to be. All transformations and transfer modes that are
available to QuickDraw are now available on ANY printer.
Drag and drop printing. Desktop printers. No more print monitor. Background
printing to all printers not just LaserWriters. A special folder in the
finder for spooled print jobs. To cancel a print job, just drag it to the
trash. To move a print job, just drag it to a different printer.
Printer drivers can be written within hours. Special extensions can be
written to handle the print dialogs or any part of the printing process.
One example shown was an extension to put light gray text behind the image
to be printed. Also, another extension was mentioned that could take the
print job and print thumbnails or N-up pages. Support for different paper
type in one document. (i.e. First page is envelope, second page is letter
head and third page is 2nd sheet.)
(I can't believe the Tom Dowdy and company kept this printing stuff
so quite for all these years.)
Open Collaboration Environment (OCE):
This was the one of the biggest things at the conference. The stuff in OCE
are:
Standard mail interface for all applications.
Mail in every application just like printing is.
Digital signatures.
You can sign a whole document part of a document of just one cell of in a
document.
Encryption.
Standards for DES encryption.
Directory services.
Finder is enhanced with directories for network services like a fax
machines,file servers, ISDN and TCP/IP or whatever devices are attached to
the network. Cellular phone. Telephony. Video conferencing integration with
telephone services like voice mail.
AppleScript:
A hypertalk like language for the Mac. Can be written in any language and
translated on the fly. Fast, compiled code is stored on disk . Uses apple
events to work. Applications must be rewritten to take advantage or the
recording of scripts. (apps must send an apple event for everything that is
done in the application so that the recorder can see it). Applications that
are not system 7 savvy will not benefit from AppleScript.
QuickTime:
Improvements in speed, capabilities and media support. Speed is really
impressive. Support for black and white movie playback. Better
compression,dithering and movie playback speed. Neat-o video effects like
blue-screening and free form rotation of a playing movie. Also added
support for a generic media handler. Can handle anything stored in it.
Showed a demo of a movie, with text as the media type, was used to show closed
caption text. Also used text to show time code (pseduo). Text was used to
create movie titles. Now you can make your own home movies. Better movie
editing with cut,copy and paste with selected frames. Also support for MIDI
data. You can either select a software MIDI synth or you can select an
external MIDI device for sound output.
BENTO:
New industry standard on cross platform document sharing. Did not see this
technology in action.
SoundManager:
Support for 16bit CD quality sound. Changed the 22khz sound to the industry
standard 22.05? khz( apple was off by a few hz's) Entirely rewritten sound
manager for better performance . Cost on CPU time is now down to about 20%
CPU usage instead 60-80 % it is now. I think this is at 22khz stereo sound.
MIDI was mentioned in the same breath as Apple Corp. so I think Apple solved
the legal problem with the former Beatles record label. Not to much detail
about MIDI was given though. :-(
Support for external hardware like the DigiDesign's audiomedia card.
Speech and Voice recognition:
Show a demo of Casper the speech recognition technology. It was demoed with
a mock VCR programing application. The user asked Casper to start taping
channel five at 7:30 pm to 9:00 pm. Casper then opened the VCR program and
entered the spoken command into the edit field.
Casper was then asked to pay some bills. The user said "Casper Pay PG&E
123.18 and Casper opened the checkbook application and wrote out a check to
PG&E for that amount.
I can't remember but I think the user called the Mac and asked Casper to read
him any email messages that he had.The then read out load using the new text
to speach manager, the mail messages.
Macintalk has been replaced with Macintalk II. There is a low quality
version that takes about 100K of memory or so. Then there is a better
quality one that takes up about 1.5 Megs of memory. Both versions are very
impressive. They can tell a lot about English and can tell the difference
between Dr. Who (doctor) and Rodeo Dr. (drive) when used in context.
Also punctuation effects inflection.
Pen Based Computing:
Showed a demo of pen technology and its pretty amazing. Check mark an item
to open it. There is a compatibility mode so the pen will work in any
application. Just write on the pad and the computer translates the writing
into text. (it uses a dictionary to correctly guess what you are writing).
Open paren and close paren on a chuck of text selects that text. Write a
delete gesture and the text is cut. Write a insert gesture and the text is
pasted in at the insertion mark. This was a demo in a standard
Mac write II application it think.
Then they brought out the guy who wrote the equation editor that FRAME
bought and used for their Word Processor. He took the pen technology and
wrote the most amazing equation editor ever seen on ANY computer. The crowd
went crazy while he was demoing his software. (he got the only standing
ovation in the entire week) He would just write an equation as you would on
a piece of paper and the computer would first translate it into the proper
typographical symbols and then solve the problem. He could move things back
and forth across the equal sign and the computer automatically did the
right thing. Same thing with a divide line He would select an equation and
write the letter g and would get a graph instantly.
Matt
_____________________________________________________________________
Matthew Xavier Mora | The keeper of the UMPG
SRI International | Matt_Mora@QM.sri.com
[sent using Eudora 1.3b34] | mxmora@unix.sri.com
_____________________________________________________________________
"You give good headgames, your tongue is so strange, caught in these
backstage chains." _Crashed_ by Slik Toxik
- --
___________________________________________________________
Matthew Mora | my Mac Matt_Mora@sri.com
SRI International | my unix mxmora@unix.sri.com
___________________________________________________________
---------------------------
From: kempkec@fog.CS.ORST.EDU (Christopher Kempke)
Subject: Newline Mode
Date: 19 May 92 08:19:45 GMT
Organization: Oregon State University, Computer Science Dept.
Inside Mac, Volume IV, page 95 (File Manager):
Note: Advanced Programmers: The File Manager can also
read a continuous stream of characters or a line of characters.
...
In the second case, called Newline Mode, .....
This is the ONLY refernce to Newline mode I can find. Where is
it documented? I _think_ I've been thorough in looking for it,
but I've had no luck. The index points only to that one note,
which tells you WHAT newline mode is, but not HOW to use it.
Advice? Maybe I'm just not an advanced enough programmer.... :-)
--Chris
+++++++++++++++++++++++++++
From: jcav@quads.uchicago.edu (JohnC)
Date: Tue, 19 May 1992 15:19:03 GMT
Organization: The Royal Society for Putting Things on Top of Other Things
In article <1992May19.081945.27290@CS.ORST.EDU> kempkec@fog.CS.ORST.EDU (Christopher Kempke) writes:
>
> Inside Mac, Volume IV, page 95 (File Manager):
>
> Note: Advanced Programmers: The File Manager can also
> read a continuous stream of characters or a line of characters.
>
> ...
>
> In the second case, called Newline Mode, .....
>
> This is the ONLY refernce to Newline mode I can find. Where is
> it documented? I _think_ I've been thorough in looking for it,
> but I've had no luck. The index points only to that one note,
> which tells you WHAT newline mode is, but not HOW to use it.
> Advice? Maybe I'm just not an advanced enough programmer.... :-)
Nah, you just haven't memorized the Six Volumes. :-) Seriously, check out
the note near the bottom of IM-IV, page 121. I quote:
NOTE: Bit 7 of ioPosMode is the newline flag; it's set if read
operations should terminate at the newline character. The ASCII
code of the newline character is specified in the high-order byte
of ioPosMode. If the newline flag is set, the data will be read
one byte at a time until the newline character is encountered,
ioReqCount bytes have been read, or the end-of-file is reached. If
the newline flag is clear, the data will be read one byte at a time
until ioReqCount bytes have been read or the end-of-file is reached.
As to why this isn't referred to by the index...
- --
John Cavallino | EMail: jcav@midway.uchicago.edu
University of Chicago Hospitals | John_Cavallino@uchfm.bsd.uchicago.edu
Office of Facilities Management | USMail: 5841 S. Maryland Ave, MC 0953
B0 f++ c+ g+ k s++ e+ h- pv | Chicago, IL 60637
+++++++++++++++++++++++++++
From: oster@well.sf.ca.us (David Phillip Oster)
Date: 20 May 92 07:10:01 GMT
Organization: Whole Earth 'Lectronic Link
One thing Inside Mac won't tell you:
Newline mode is only implemented in the file manager. It will not work to
try to read the serial port in newline mode. This is really stupid, since
if it did work, it would make PBRead similar in behavior to a normal unix
read() (which returns one line from a serial device.) And it would be
consisttent with Newline mode read from a file, but that is the way it has
been since the beginning.
(Caveat, the last time I actually tested this was a few systems back. Apple
may have fixed it and not told anyone.)
+++++++++++++++++++++++++++
From: Dave.Heller@f444.n161.z1.FIDONET.ORG (Dave Heller)
Date: 21 May 92 05:57:22 GMT
Organization: FidoNet node 1:161/444 - BMUG, Berkeley CA
Inside Mac, Volume IV, page 95 (File Manager):
Note: Advanced Programmers: The File Manager can also
read a continuous stream of characters or a line of characters.
...
In the second case, called Newline Mode, .....
This is the ONLY refernce to Newline mode I can find. Where is
it documented? I _think_ I've been thorough in looking for it,
but I've had no luck. The index points only to that one note,
which tells you WHAT newline mode is, but not HOW to use it.
Advice? Maybe I'm just not an advanced enough programmer.... :-)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Keep reading. The newline mode is documented on page 121 of IM-IV, sort of.
Dave Heller
Salient Software, Inc
- --
Dave Heller - via FidoNet node 1:125/555
UUCP: ...!uunet!hoptoad!kumr!fidogate!161!444!Dave.Heller
INTERNET: Dave.Heller@f444.n161.z1.FIDONET.ORG
---------------------------
From: dirty@engin.umich.edu (Cameron Javad Esfahani)
Subject: PBCatSearch Problems...
Organization: University of Michigan
Date: Fri, 15 May 1992 23:04:01 GMT
I am writing a program which will search each mounted volume for the invisible
Icon files. The code below will work on the first volume, but on successive
volumes, it cannot find anything matching the search characteristics. If
I rerun the search code without restarting the program it won't even find the
files it found earlier on the first mounted volume. This leads me to believe
I have screwed up the parameter block somehow. But what have I done.....
OSErr GetNextVolume(short *vRefNum,Str255 *volName,short *currVolIndex)
{
OSErr theErr=noErr;
VolumeParam pb;
IOParam pb2;
GetVolParmsInfoBuffer volInfoBuf;
Boolean done=FALSE;
while ((theErr==noErr)&&(!done))
{
pb.ioCompletion=NULL;
pb.ioVolIndex=(*currVolIndex)++;
pb.ioNamePtr=*volName;
pb.ioVRefNum=*vRefNum;
theErr=PBGetVInfo((ParmBlkPtr)&pb,FALSE);
if (theErr==noErr)
{
pb2.ioNamePtr=*volName;
pb2.ioCompletion=NULL;
pb2.ioVRefNum=pb.ioVRefNum;
pb2.ioBuffer=(Ptr)&volInfoBuf;
pb2.ioReqCount=sizeof(volInfoBuf);
theErr=PBHGetVolParms((HParmBlkPtr)&pb2,FALSE);
if (theErr!=noErr)
DebugStr("\pWe have a problem with PBHGetVolParms.");
else
if (((GetVolParmsInfoBuffer *)(pb2.ioBuffer))->vMServerAdr==0)
done=TRUE;
}
if ((theErr!=nsvErr)&&(theErr!=noErr))
DebugStr("\pWe have a problem with PBGetVInfo.");
else
*vRefNum=pb.ioVRefNum;
}
return(theErr);
}
OSErr FindIconFiles(long *numMatches, FSSpecArrayPtr *theResults, Boolean Hide)
{
#define kOptBufferSize 32767
OSErr theErr=noErr;
short vRefNum;
CSParamPtr pb;
Ptr buffer=NULL;
CInfoPBRec parmBlock;
Boolean done=FALSE;
Str255 volName;
long maxMatches;
short currVolIndex=1;
unsigned char len;
maxMatches=*numMatches;
*theResults=(FSSpecArrayPtr)NewPtr(sizeof(FSSpec)*(maxMatches));
while ((theErr=GetNextVolume(&vRefNum,&volName,&currVolIndex))==noErr)
{
buffer=NewPtr(kOptBufferSize);
*theResults=(FSSpecArrayPtr)NewPtrClear(sizeof(FSSpec)*(maxMatches));
pb=(CSParamPtr)NewPtrClear(sizeof(CSParam));
pb->ioCompletion=NULL;
pb->ioNamePtr=volName;
pb->ioVRefNum=vRefNum;
pb->ioMatchPtr=*theResults;
pb->ioReqMatchCount=maxMatches;
pb->ioSearchBits=fsSBFullName+fsSBFlAttrib;
pb->ioSearchTime=0;
pb->ioCatPosition.initialize=0;
pb->ioOptBuffer=buffer;
pb->ioOptBufSize=kOptBufferSize;
pb->ioSearchInfo1=(CInfoPBPtr)NewPtrClear(sizeof(CInfoPBRec));
pb->ioSearchInfo2=(CInfoPBPtr)NewPtrClear(sizeof(CInfoPBRec));
pb->ioSearchInfo1->hFileInfo.ioNamePtr="\pIcon";
len=pb->ioSearchInfo1->hFileInfo.ioNamePtr[0];
*(pb->ioSearchInfo1->hFileInfo.ioNamePtr+len+1)=0x0D;
pb->ioSearchInfo1->hFileInfo.ioNamePtr[0]++;
pb->ioSearchInfo1->hFileInfo.ioFlAttrib=0x0;
pb->ioSearchInfo2->hFileInfo.ioNamePtr=NULL;
pb->ioSearchInfo2->hFileInfo.ioFlAttrib=0x10;
while (!done)
{
theErr=PBCatSearch(pb,FALSE);
if ((theErr!=noErr) && (theErr!=eofErr))
DebugStr("\pThere was a problem with PBCatSearch");
done=(theErr==eofErr);
if (((theErr==noErr)||(done==TRUE))&&(pb->ioActMatchCount>0))
theErr=ProcessCustomIcons(pb->ioActMatchCount,pb->ioMatchPtr,Hide);
}
if (theErr==eofErr)
theErr=noErr;
*numMatches=pb->ioActMatchCount;
done=FALSE;
DisposPtr(buffer);
DisposPtr((Ptr)pb->ioSearchInfo1);
DisposPtr((Ptr)pb->ioSearchInfo2);
DisposPtr((Ptr)pb);
DisposPtr((Ptr)*theResults);
}
return(theErr);
}
- --
Cameron Esfahani return(user_id==dirty ? BREAK : WORK);
dirty@engin.umich.edu CAEN Support
+++++++++++++++++++++++++++
From: rhessjr@west.darkside.com (Robert Hess)
Date: 21 May 92 17:52:19 GMT
Organization: Consultant
In article <DIRTY.92May15180401@limbo.engin.umich.edu>, dirty@engin.umich.edu (Cameron Javad Esfahani) writes:
>
> I am writing a program which will search each mounted volume for the invisible
> Icon files. The code below will work on the first volume, but on successive
> volumes, it cannot find anything matching the search characteristics. If
> I rerun the search code without restarting the program it won't even find the
> files it found earlier on the first mounted volume. This leads me to believe
> I have screwed up the parameter block somehow. But what have I done.....
>
> ...
>
> pb->ioSearchInfo1->hFileInfo.ioNamePtr="\pIcon";
I don't think that this is your problem, but Icon files are actually named
"Icon\13" ("Icon" with a carriage return on the end).
Robert
---------------------------
From: choi@gsbsrc.uchicago.edu (Dongseok Choi)
Subject: X-lisp
Date: 15 May 92 22:48:39 GMT
Organization: University of Chicago Computing Organizations
Hello netters!
Where can I get X-lisp for mac?
Is there any other free/shareware Lisp for mac?
Thank you in advance,
Choi
choi@gsbsrc.uchicago.edu
choi@galton.uchicago.edu
+++++++++++++++++++++++++++
From: ksand@apple.com (Kent Sandvik)
Date: 21 May 92 20:31:07 GMT
Organization: MacDTS Mongols
In article <1992May15.224839.25921@midway.uchicago.edu>,
choi@gsbsrc.uchicago.edu (Dongseok Choi) writes:
> Where can I get X-lisp for mac?
> Is there any other free/shareware Lisp for mac?
altorf.ai.mit.edu is a nice place for fetching most of the
publicly known public domain Scheme and LISP systems, also
for the MacOS.
- --
Cheers, Kent
---------------------------
From: jerry@uni-paderborn.de (Gerald Siek)
Subject: How to handle more than 32k of text ?
Date: 20 May 92 11:17:48 GMT
Organization: Uni-GH Paderborn
Hello Mac Wizards!
Has anyone experience with programming text windows which holf more
than 32kB of text (the normal TextEdit limit).
I need to set up a larger text window, best would be a virtually
infinite scrolling area (like MPW has). Any hints on how to enlarge
the text buffer are greatly appriciated. Can I use multiple
TextEdit structures or must I define my own editor routines (which
would be a LOT of work)?
Programming examples would be great. I have ftp access so I could
download them from any ftp-server.
Thanks alot!
Jerry
- --
Gerald Siek - jerry@uni-paderborn.de - University of Paderborn, Germany
+++++++++++++++++++++++++++
From: peirce@outpost.SF-Bay.org (Michael Peirce)
Date: 21 May 92 02:51:18 GMT
Organization: Peirce Software
In article <1992May20.111748.22322@uni-paderborn.de> (comp.sys.mac.programmer), jerry@uni-paderborn.de (Gerald Siek) writes:
> Hello Mac Wizards!
>
> Has anyone experience with programming text windows which holf more
> than 32kB of text (the normal TextEdit limit).
> I need to set up a larger text window, best would be a virtually
> infinite scrolling area (like MPW has). Any hints on how to enlarge
> the text buffer are greatly appriciated. Can I use multiple
> TextEdit structures or must I define my own editor routines (which
> would be a LOT of work)?
TextEdit is not a text editor. It's a simple text handler for dialogs
and other small text areas. It was never meant to be used with large
chunks of text and degrades rather swiftly when given more than small
amounts of text.
There are a number of third party solutions for text editing (Word
Solution Engine comes to mind). Many programs impliment their own
text handling - yes it's work, but not all that hard...
- -- Michael Peirce -- peirce@outpost.SF-Bay.org
- -- Peirce Software -- Suite 301, 719 Hibiscus Place
- -- Makers of... -- San Jose, California USA 95117
- -- -- voice: (408) 244-6554 fax: (408) 244-6882
- -- SMOOTHIE -- AppleLink: peirce & America Online: AFC Peirce
+++++++++++++++++++++++++++
From: time@ice.com (Tim Endres)
Date: 21 May 92 15:45:17 GMT
Organization: ICE Engineering, Inc.
In article <D2150035.40k161@outpost.SF-Bay.org> (comp.sys.mac.programmer), peirce@outpost.SF-Bay.org (Michael Peirce) writes:
> Solution Engine comes to mind). Many programs impliment their own
> text handling - yes it's work, but not all that hard...
And sometimes fun!
tim endres - time@ice.com -or- uupsi!tbomb!time
ICE Engineering, Inc. - Phone (313) 449 8288 - FAX (313) 449-9208
8840 Main Street, Whitmore Lake, MI 48189
USENET - a slow moving self parody... ph
+++++++++++++++++++++++++++
From: sbc@informatics.wustl.edu (Steve Cousins)
Organization: Washington University in Saint Louis, Missouri USA
Date: Thu, 21 May 1992 20:34:59 GMT
peirce@outpost.SF-Bay.org (Michael Peirce) writes:
>There are a number of third party solutions for text editing (Word
>Solution Engine comes to mind). Many programs impliment their own
>text handling - yes it's work, but not all that hard...
Does anyone have suggestions on the best (by whatever standard) text
editor package/objects are available? Ideally, I'd like source code
that's compatible with MacApp (a MacApp object would be perfect).
I would like to have hypertext links, but would be willing to add that
myself. Starting with TTEView in MacApp seems a long way from my
goal, and if the MacApp DemoText application is an indicator, anything
build with TTEView will be SLOW. Has anyone used SuperTEView?
Steve Cousins sbc@informatics.wustl.edu
Medical Informatics Laboratory (314) 362-4322
Washington University
+++++++++++++++++++++++++++
From: wysocki@husc.harvard.edu (Chris Wysocki)
Date: 22 May 92 01:04:17 GMT
Organization: Harvard University, Cambridge, MA
In article <1992May20.111748.22322@uni-paderborn.de>, jerry@uni-paderborn.de
(Gerald Siek) writes:
> Has anyone experience with programming text windows which holf more
> than 32kB of text (the normal TextEdit limit).
I've written a class for the THINK Class Library called CPEditText which can
handle more than 32k of text. The source code is available via anonymous ftp
from ftp.brown.edu, in /pub/tcl/contributors/Chris_Wysocki. It would take a
little work to convert it to "standard" (i.e. non-object-oriented) C, but it
shouldn't be that difficult to do.
Chris Wysocki
wysocki@husc.harvard.edu
+++++++++++++++++++++++++++
From: mpradhan@medicine.adelaide.edu.au (Malcolm Pradhan)
Date: 22 May 92 05:26:18 GMT
Organization: Faculty of Medicine, University of Adelaide
In article <1992May20.111748.22322@uni-paderborn.de> jerry@uni-paderborn.de
(Gerald Siek) writes:
>Has anyone experience with programming text windows which holf more
>than 32kB of text (the normal TextEdit limit).
I recently came across a new class in Think C for handling > 32K of text
and also tabs. I found it on Compu$erve, I haven't tried it yet, but
as it is of interest I've put it on the local ftp site for anyone to
pick up. I think it's ok to do this according to the authors instructions
(which I've included below).
To access the compact pro file anonymous ftp to ache.mad.adelaide.edu.au
(IP 129.127.56.3), get the file CPEditText_1.0b2.cpt.hqx in the directory
/pub/Mac/. Please do not post me about the file, I don't know much about
it at all, I'm not the author.
Regards,
Malcolm
PS message from the author follows the sig.
_________________________________________________________________
Malcolm Pradhan
Medical Computing, Faculty of Medicine _--_|\
University of Adelaide, South Australia / \
InterNet: mpradhan@medicine.adelaide.edu.au \_.--x_/
Fax: +618 223 2076 :x marks the spot: v
/**********************************************************************
CPEditText.c
Methods for text editing class for the THINK Class Library
SUPERCLASS = CAbstractText
---- DESCRIPTION ----
CPEditText is a class for version 1.1.x of Symantec's THINK Class
Library that implements a simple text editing pane. It can be used as
a direct replacement for the standard TCL CEditText class. However,
since CPEditText does not use the standard Macintosh TextEdit
routines, it supports fixed-width tabs and can be used to display and
edit more than 32k of text.
---- LIMITATIONS ----
CPEditText is designed to implement an MPW-style text editor, and as
such it supports only a single font, size and style for text. The
code also does not use the Macintosh Script Manager routines, so it
may not work properly with certain international versions of System
software. This initial release of CPEditText employs a less-than-
optimal approach to buffer management, and consequently performance
may be somewhat sluggish when editing large (>100k) text buffers.
Some or all of these limitations may be addressed in a future release
of this source code.
---- VERSION HISTORY ----
o 1.0b1 (27 April 1992)
- Initial public release
o 1.0b2 (30 April 1992)
- Fixed cosmetic bug in DoClick that caused insertion caret
to not get erased when selection range changed
---- LICENSE AGREEMENT ----
This source code was written by and is the property of Christopher R.
Wysocki. It may be freely distributed and used, in whole or in part,
in any software for the Macintosh, including but not limited to
commercial, shareware, freeware or private applications. However, any
software that uses any part or all of this source code must include a
copyright notice indicating that part or all of this source code is
used in the software. You are entitled to make modifications or
improvements to any portion or all of this source code, provided that
all such modifications are returned to me by whatever means are
available to you, either in written or electronic form. You may not,
however, distribute modified versions of this source code, and you
must accept that I retain the right to incorporate any or all of your
modifications in future releases of this source code. This license
agreement and the copyright notice below must not be modified in any
way and must be included with all distributions of this source code at
all times.
Copyright 1992 by Christopher R. Wysocki. All rights reserved.
---- ELECTRONIC MAIL ADDRESSES ----
America Online: AFA ChrisW (preferred)
CompuServe: 72010,1140
Internet: wysocki@husc.harvard.edu (preferred through 5/92)
afachrisw@aol.com (preferred after 5/92)
72010.1140@compuserve.com
******************************************************************************/
+++++++++++++++++++++++++++
From: suitti@ima.isc.com (Stephen Uitti)
Date: 22 May 92 16:24:04 GMT
Organization: Interactive Systems, Cambridge, MA 02138-5302
In article <1992May20.111748.22322@uni-paderborn.de> jerry@uni-paderborn.de (Gerald Siek) writes:
>Hello Mac Wizards!
>
>Has anyone experience with programming text windows which holf more
>than 32kB of text (the normal TextEdit limit).
Actually, TextEdit's limits are even lower than that.
I think there's a tech note about it.
>I need to set up a larger text window, best would be a virtually
>infinite scrolling area (like MPW has). Any hints on how to enlarge
>the text buffer are greatly appriciated. Can I use multiple
>TextEdit structures or must I define my own editor routines (which
>would be a LOT of work)?
>Programming examples would be great. I have ftp access so I could
>download them from any ftp-server.
Using what development environment?
Think C, Think Pascal, MPW C, MPW C++, MPW Pascal, MacApp, ...
Others have mentioned various solutions, but we don't know
the problem yet.
Stephen.
+++++++++++++++++++++++++++
From: nagle@netcom.com (John Nagle)
Date: Sat, 23 May 92 07:22:35 GMT
Organization: Netcom - Online Communication Services (408 241-9760 guest)
>In article <1992May20.111748.22322@uni-paderborn.de> jerry@uni-paderborn.de (Gerald Siek) writes:
>>Has anyone experience with programming text windows which holf (sic) more
>>than 32kB of text (the normal TextEdit limit).
I can understand TextEdit having a 32K limit, but the fact that
TEInsert trashes memory if insertions push the size over the 32K limit
is inexcusable.
John Nagle
---------------------------
From: David.Berger@bbs.oit.unc.edu (David Berger)
Subject: MPW setup
Organization: Extended Bulletin Board Service
Date: Thu, 21 May 1992 17:41:29 GMT
I was wondering if some kind person out there in netland could explain to
me in simple english how to set up MPW. I currently use Think C, but am
very curious of the power behind MPW. Thanx.
Dave
dberger@usc.pppl.gov
udberger@mcs.drexel.edu (if 1st bounces)
;)-~
- --
The opinions expressed are not necessarily those of the University of
North Carolina at Chapel Hill, the Campus Office for Information
Technology, or the Experimental Bulletin Board Service.
internet: bbs.oit.unc.edu or 152.2.22.80
+++++++++++++++++++++++++++
From: holiday@bnr.ca (Matt Holiday)
Date: 22 May 92 14:08:56 GMT
Organization: Bell-Northern Research
I believe the latest versions of MPW have been including an installer utility which
puts everything in its place; if not, the manual should describe it all. In brief,
create an MPW folder at the root level of your disk, copy the shell and the scripts
which aren't in any folder into that folder, and copy all the folders into that
folder. Note that if you bought more than one compiler and/or assembler, you may
need to move the subfolders of :MPW:Includes: and :MPW:Libraries: together -- I
think it will become clear as you do it. Then start MPW.
There's a pretty good book on MPW which describes MPW 3.x. There used to be a book
describing MPW 2.x that also might be helpful, if it hasn't gone out of print. MPW
is a very powerful environment, but much less intuitive than some other development
tools for the Mac; familiarity with Unix is helpful.
- ---------------------------------------------------------------------------
Matt Holiday #include <std/disclaimer>
holiday@bnr.ca
BNR Richardson
---------------------------
From: jverdega@cae.wisc.edu (Jeffrey Verdegan)
Subject: Mac TCP APIs -- what/where are they?
Date: 21 May 92 22:46:50 GMT
Organization: U of Wisconsin-Madison College of Engineering
As is often the case, the subject says it all. I've seen references to people
programming using TCP on this group (I think), so I assume there is some kind
of API available. What form does it take? (C libraries, source code, magic
spells?) Where can I get it? How much does it cost? Will it work with
THINK C? And, last but not least, how about documentation?
Thanke ye verily,
Jeff
- ----------
Jeff Verdegan
University of Wisconsin-Madison
Computer-Aided Engineering Center
jjv@caestaff.engr.wisc.edu
(608) 263-1875
+++++++++++++++++++++++++++
From: jstevens@crick.ssctr.bcm.tmc.edu (Jason Philip Stevens)
Date: 22 May 1992 17:03:33 GMT
Organization: Baylor College of Medicine, Houston, Tx
In article <1992May21.174652.1292@doug.cae.wisc.edu>, jverdega@cae.wisc.edu (Jeffrey Verdegan) writes:
|> As is often the case, the subject says it all. I've seen references to people
|> programming using TCP on this group (I think), so I assume there is some kind
|> of API available. What form does it take? (C libraries, source code, magic
|> spells?) Where can I get it? How much does it cost? Will it work with
|> THINK C? And, last but not least, how about documentation?
Hmm? I think what you need is the MacTCP developer's kit, available from apple.
It lists detailed descriptions of the MacTCP calls and how to make them. If, on
the other hand, you've seen this and want something simpler and easier to use,
I'm writing a library for an easy-to-use event driven interface to MacTCP; if
you want it, it's yours (of course, it's still being debugged, but if you want to
help with that too, great! ;).
- -jps
- --
Jason Stevens Internet: jstevens@bcm.tmc.edu
Network User Services Voice: (713) 798-7370
Baylor College of Medicine Opinions expressed are mine alone.
---------------------------
End of C.S.M.P. Digest
**********************