[net.micro.mac] IMLIb Source Posting

shebanow@ernie.BERKELEY.EDU (Mike Shebanow) (11/28/85)

(beware the line eater)

Posted to net.sources.mac (I hope):

Complete source listings for IMLib, a library of routines for
Consulair C (4.00 or greater) that emulates many of the [Pascal Only]
routines described in Inside Mac. This is a lot of code: about 50K.
I have complete documentation in MacWrite/Excel format. However, it is not
being posted, since few people have Excel and I haven't converted any
of the documentation. This letter and the source posting are all there is.
I do provide the documentation and code as part of the MDSMake package
sent to registered users. Updates to the library will be done primarily
through the registered user base, with usenet/Compuserve type updates
occuring sporadically. I expect to have the library "complete" in a month.

The library has about 100 routines in it, most of which are written in
MDS assembly code. Nearly all of the calls are implemented. Not including
higher level driver calls (like AppleTalk, Serial, Disk & Sound Driver),
all but 19 of the calls defined by Apple as of 8/24/85 are implemented.
The UNIMPLEMENTED calls are:

	DlgCut, DlgCopy, DlgPaste, DlgDelete,
	GetAlertStage, ResetAlertStage,
	SetClikLoop, SetWordBreak,
	SetDAFont,
	CloseDriver, Control, GetDCLEntry, GetVRefNum,
	KillIO, OpenDriver, Status,
	GetApplLimit, MoveHHi, Restart
	(Plus the driver interface calls)

There are also some additional calls for manipulating Pascal strings &
creating Finder arguments for other programs (prior to a _Launch).
The finder routines are used by MDSMake, and were tricky to figure out.
Be aware that the File Manager routines GetEOF and Allocate have
name conflicts with routines in Consulair's 'Standard Library.REL', the
solution is to make and use a library called 'MacCLib.REL' which consists
of the following REL files (in Consulair Linker format) from your Mac C Toolkit
diskette:

	/Library MacCLib.REL
	/Create
	QStartLib
	CommonLib
	FloatLib
	SaneLib
	MathLib
	FloatConv
	/End

Note that you must use the QUICKSTART routine for any program that uses
MACCLIB.

The IMLib.REL posted previously was missing a few routines (about 9, none
of which were particualrly useful). To get the current library, you must do a
recompile.

Warning: MANY of these routines are untested. Although I believe that they
should work correctly, there are no guarantees. If the results of a function
are not what you expect, then it is not unreasonable to suspect the library.


Happy hacking....

Andrew G. Shebanow
HyperSoft