Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!rutgers!tut.cis.ohio-state.edu!ucbvax!dewey.soe.berkeley.edu!oster From: oster@dewey.soe.berkeley.edu (David Phillip Oster) Newsgroups: comp.sys.mac.programmer Subject: Re: Sublaunching (really user extendable programs) Message-ID: <30610@ucbvax.BERKELEY.EDU> Date: 13 Aug 89 20:23:27 GMT References: <1529@ndmath.UUCP> Sender: usenet@ucbvax.BERKELEY.EDU Reply-To: oster@dewey.soe.berkeley.edu.UUCP (David Phillip Oster) Organization: School of Education, UC-Berkeley Lines: 28 Greg, you should definately get a copy from APDA of the docuementation for Apple's Communication Toolbox, since it gives an Apple sanctioned standard for doing exactly what you want to do. You should read Inside Macintosh, particularly the Package Manager chapter. Here is what you do: You create your applications as files containing resources, including code resources of a private type, (i.e., not PACK). Your frame application opens the file, loads, MoveHHi()s and calls the resource, passing it a pointer to a record of global variables, including a slot for it to put a handle to its own storage, and a vector of call back procedures so the satellite can call the core program for services like actually reading and writing data from the port. For examples of this way of doing things, see the Hyp[ercard technical manual, particualarly the section on writing XCMDs. See the resEdit manual, particularly the section on writing Pickers and Editors. If multiple satellite programs can be active simultaneously, you may need to wrap each entry point to one of your code routines with a header and footer that save, set, and restore the CurResFile --- David Phillip Oster 7 line signature follows Keith Sproul, head of microcomputer support at Union Carbide, NJ, complained about the poorly digitized fellatio on an IBM porno program. "Mac is better on everything, and this is no execption." -- "Computer Porn at the Office" by Reese Erlich, _This_World_, S.F. Chronicle, p.8, Aug 13, 1989 Arpa: oster@dewey.soe.berkeley.edu Uucp: {uwvax,decvax}!ucbvax!oster%dewey.soe.berkeley.edu